[英]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.