现在我首先要查询相同temperatur
和zeit
的结果,例如
(select * from table where temperatur= array.. AND zeit=array...).
现在举例来说,我得到的结果是这样的:
一个温度和zeit = 85,30,另一个温度85,45 ..
现在根据(aussehen,farbe,变形,geruch,纹理)的列总和,我希望得到最好的结果。
例如匹配列的最后一行是(14)而另一匹配是(17)我想得到最好的结果是14 ..
我怎样才能在laravel orm中做到这一点?
对于整个查询,我使用了这个
orderBy( DB::raw('(aussehen) + (farbe)+(deformation)+(geruch)+(texture)'))->limit(1)->get();
但知道我想比较总和的结果..
我希望我已正确解释了我的问题。
答案 0 :(得分:1)
试试这个:
$result = DB::('table')
->select(DB::raw('*, (aussehen) + (farbe)+(deformation)+(geruch)+(texture) as sum'))
->where('temperature', '=', $temp) //variable passed to function
->where('zeit', '=', $zeit) // variable passed to function
->orderBy('sum', 'asc')
->first();