Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“帮助”;“红宝石”;这个SQL_Sql_Ruby On Rails_Ruby - Fatal编程技术网

“帮助”;“红宝石”;这个SQL

“帮助”;“红宝石”;这个SQL,sql,ruby-on-rails,ruby,Sql,Ruby On Rails,Ruby,我只需要一些帮助来完成此SQL: SELECT us.name, pt.task, sum(hours) FROM records INNER JOIN project_tasks pt ON records.task_id = pt.id INNER JOIN users us ON records.user_id = us.id GROUP BY user_id, task 类似于以下内容的Ruby SQL: test = Record.sum( :hours ,

我只需要一些帮助来完成此SQL:

SELECT us.name, pt.task, sum(hours) 
  FROM records
  INNER JOIN project_tasks pt ON records.task_id = pt.id   
  INNER JOIN users us ON records.user_id = us.id 
  GROUP BY user_id, task
类似于以下内容的Ruby SQL:

test = Record.sum( :hours ,
                      :joins => :project_task,
                      :joins => :user,
                      :conditions => {""} )
我知道的远不止这些,但我很难计算出条件。 通过将SQL转换为以下内容,我得到了上述信息:

test = Record.select( "name, task, sum(hours)").joins( :project_task).joins( :user).group("user_id, task" )

我是Ruby新手,所以任何帮助都会很好

旧式变体将是:

Record.find(:all,
            :select => 'name, task, sum(hours)',
            :joins => 'INNER JOIN project_tasks pt ON records.task_id = pt.id INNER JOIN users us ON records.user_id = us.id',
            :group => 'user_id, task')

我尝试了您的代码并将其更改为:
record=efforce.find(:all,:select=>“users.full\u name,project\u tasks.task\u name,hours”,:joins=>[:user,:project\u task],:group=>“user\u id,project\u tasks.task\u name”)