Laravel:调用一个成员函数where()on float

时间:2017-06-06 05:21:32

标签: php mysql laravel laravel-5

我试图使用Query Builder查找不同列的总和。 这是查询:

dd()

但当我batch_size_T = tf.shape(Xin)[0] 输出时我得到了上面的Error.ie,

  

调用成员函数where()on float

我如何避免这种情况?

2 个答案:

答案 0 :(得分:2)

您应该在查询结束时致电sum

DB::table('carts')
   ->where('status', 1)  
   ->where('user_id', $id)
   ->sum(\DB::raw(
       'carts.price 
       + COALESCE(carts.support, 0) 
       + COALESCE(carts.installation, 0)' 
   ));  

答案 1 :(得分:1)

Laravel doc

  

查询构建器还提供了各种聚合方法,例如   countmaxminavgsum。您可以在之后调用任何这些方法   构建您的查询:

$users = DB::table('users')->count();

$price = DB::table('orders')->max('price');
     

当然,您可以将这些方法与其他条款结合使用:

$price = DB::table('orders')
                ->where('finalized', 1)
                ->avg('price');