我目前遇到了MySQL的麻煩。通過JOIN獲得不同的特徵
我有2個表:
TABLE1
------
id name
1 John
TABLE2
------
id TABLE1_id name value
1 1 Age 42
2 1 Height 172cm
我想獲得這樣的約翰所有的特點:
name age height
John 42 172cm
這裏是我當前的查詢:
SELECT DISTINCT
IF(TABLE2.name = "Age", TABLE2.value, 0) as age,
IF(TABLE2.name = "Height", TABLE2.value, 0) as height,
FROM TABLE1
LEFT JOIN TABLE2 ON TABLE2.TABLE1_id = TABLE1.id
WHERE
TABLE1.name = "John"
的問題是查詢返回2行:一個使用Age,另一個使用Height。
我嘗試了幾種聯接類型(左,右等),試圖刪除「DISTINCT」,但我無法解決這個問題。
你能幫忙嗎? :)
是什麼在表2中的ID列嗎? – Strawberry
該id是主鍵。我不需要它的結果:) –
我的猜測是,在你的例子(不像我的例子)(TABLE1_ID,名稱)始終是唯一的。因此,這將起到主鍵的作用。 – Strawberry