我有一個合同表,這是示例資料
id spec1 spec2 spec3
1 2 4 3
我得到了另一個規格表,值是
id text
1 hello
2 hi
3 hola
4 yow
我如何從規格表中獲取文本?我需要多人加入他們嗎?我想要的是類似的東西
{
contract.id: 1,
spec1: hello,
spec2: yow,
spec3: hola,
}
{
contract.id: 2,
spec1: hello,
spec2: yow,
spec3: hola,
}
我從合同表中選擇
我試過
DB::table('contracts as c')
->join('spec','spec.id','c.spec1')
->join('spec','spec.id','c.spec2')
->join('spec','spec.id','c.spec3')
->get();
但它錯了,并出現了一些錯誤。在此先感謝您的幫助。
uj5u.com熱心網友回復:
試試下面的代碼:
DB::table('contracts')->select('contracts.id','a.text AS spec1','b.text AS spec2','c.text AS spec3')
->leftJoin('specs AS a', 'a.id', 'contracts.spec1')
->leftJoin('specs AS b', 'b.id', 'contracts.spec2')
->leftJoin('specs AS c', 'c.id', 'contracts.spec3')
->get();
MySQL檔案
閱讀這個問題
uj5u.com熱心網友回復:
DB::table('contracts as c')
->leftjoin('spec as s1', 's1.id', '=', 'c.spec1')
->leftjoin('spec as s2', 's2.id', '=', 'c.spec2')
->leftjoin('spec as s3', 's3.id', '=', 'c.spec3')
->select('c.id as contract.id', 's1.text as spec1', 's2.text as spec2', 's3.text as spec3')
->get();
讓我知道結果。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/328748.html
下一篇:無法弄清楚MYSQL查詢的問題
