2
這裏是我的表結構:左加入,每離開入口僅1行
persons
-------
id
first_name
last_name
phone_numbers
-------------
id
person_id
number
type
這裏是我的查詢:
SELECT `persons`.`id`, `first_name`, `last_name`, `number`
FROM `persons`
LEFT JOIN `phone_numbers` ON `persons`.`id` = `phone_numbers`.`person_id`
ORDER BY `last_name` ASC
這將返回所有的人,無論他們是否有一個電話數。好。
當一個人擁有超過1個電話號碼時,問題就開始了;我爲同一個人獲得多行。
我該如何確保我每人只能得到1行(使用第一個電話號碼,或者不是全部 - 如果沒有的話)?
更新:我忘了,包括的事實,我有一個type
列。它的值可以是以下三種選擇之一:
- 細胞
- 工作
- 首頁
首先會通過次序而定。
哪個是「*第一個電話號碼*」? – eggyal
@eggyal - 我怎麼能忘記?我更新了我的問題。 – MegaHit
@MegaHit'type'是一個數字'1,2,3'或者說是'Cell,Work,Home'? – fthiella