簡體   English   中英

Laravel將多個SQL選擇為AS

[英]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'))

參考: https : //laravel.com/docs/5.5/queries#raw-expressions

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM