Re: [請益] 一筆資料有兩個同屬性的值,要left joi …

看板PHP作者 (kid...)時間17年前 (2008/09/23 05:49), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《blinkstar (Lanrain)》之銘言: : ※ 引述《qazsd (Be brave & outstanding)》之銘言: : : Table company: : : ID : : Name : : Table class : : ClassName : : ClassID : : Class_left : : Class_right : : Class_left以及Class_right的值,都是公司名稱,也就是company裡面的Name : : 現在就是要將class的每一筆都呈現出來 : : 並且順便將Class_left、Class_right在company資料表裡的Id也一併取出來 : : 當只要取一個公司的Id時,用left join就可以達成 : : 但是當要兩個公司(Class_left、Class_right)的id時 : : 該怎麼做比較好呢 : SELECT a.*, b.ID FROM class AS a LEFT JOIN company AS b ON a.Class_left=b.Name OR a.Class_right=b.Name WHERE xxxxxxxx : 這樣試試看吧 XD : 沒經測試過,懶的建立資料表來試,工程浩大 @@ SELECT *, ( SELECT ID FROM company WHERE class.Class_left = company.Name ) AS left_id, ( SELECT ID FROM company WHERE class.Class_right = company.Name ) AS right_id FROM class 建議欄位全部小寫,另外你的資料庫正規化設計似乎有點問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.164.131

09/23 05:56, , 1F
這是subquery的範例 不是join
09/23 05:56, 1F
文章代碼(AID): #18s1BnYc (PHP)
文章代碼(AID): #18s1BnYc (PHP)