我有兩個表:Laravel中的MySQL子查詢,如何連接查詢並將第二個查詢的結果添加爲第一個查詢的新列?
- PRODUCTS (having: ID, NAME, PRICE)
- LIKES (having: ID, PRODID, NAME)
我想詢問的第一個表,同時計數(並返回一個新列)在一個子查詢中的所有產品都有喜歡。我怎麼能結合以下查詢?
$products = DB::table('PRODUCTS')
->get();
$likes = DB::table('LIKES')
->select(DB::raw('count(*) as total'))
->where('PRODID', '=', 'product id from first table')
->get();
我怎樣才能達到這個使用Laravel查詢? 謝謝!
不要做它作爲一個子查詢,通過從產品表中的字段加入2代表一起組。 – Shadow
我已經嘗試過了,但LIKES表有多個具有相同PRODID的行,所以當我加入這兩個行時將不匹配。該查詢將在我的PRODUCTS表中創建重複的行。 –
這就是爲什麼你使用該組。我可以在sql中給你解決方案,但是你需要將它翻譯成laravel,因爲我不知道。 – Shadow