[英]Laravel multiple sql select to AS
我试图选择多个数据库列并将其合并到AS值语句中,例如SELECT sum1 as vsd FROM tablename WHERE year = 2017
我有多个列需要作为一个值输出。 所以我想上面的代码看起来像这样:
SELECT (sum1, sum2) as vsd FROM tablename WHERE year = 2017
我当前的实时代码查询如下所示:
$query = DB::table('exports')->select('id', 'year', 'week', 'month', 'staff_a, staff_b as vsd')->having('year','=',$year)->where('week', '<=', $weeknr)->orderBy('id', 'desc')->take(14)->get()->reverse();
结果是:
找不到列:1054“字段列表”中的未知列“ staff_a,staff_b”
我试图将它们(列)组合成一个数组( array('staff_a', 'staff_b')
),有一些怪异的foreach循环,但并没有尝试使其以另一种方式起作用,但这一切都引发了另一个错误消息。
有什么办法可以将多个选择“合并”到一个?
您必须使用RAW语法:
->select(DB::raw('staff_a + staff_b as vsd'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.