我看過一些類似的帖子,但無法將解決方案與我的需求相關聯。MySQL選擇所有有孩子的父項目
我有一個名爲PARENTTABLE
項目表我也有包含一個名爲CHILDTABLE
我如何編寫一個查詢,僅得到有子女的父或母,項目父的兒童項目表。
有子表稱爲父包含父ID
我看過一些類似的帖子,但無法將解決方案與我的需求相關聯。MySQL選擇所有有孩子的父項目
我有一個名爲PARENTTABLE
項目表我也有包含一個名爲CHILDTABLE
我如何編寫一個查詢,僅得到有子女的父或母,項目父的兒童項目表。
有子表稱爲父包含父ID
嘗試類似這個:
SELECT * from parent where id in (Select distinct parentid from child)
SELECT DISTINCT PARENTTABLE.*
FROM PARENTTABLE
INNER JOIN CHILDTABLE ON CHILDTABLE.parent = PARENTTABLE.id
列與EXISTS
SELECT *
FROM parenttable p
WHERE EXISTS
(
SELECT *
FROM childtable
WHERE parent_id = p.id
)
這裏的版本是SQLFiddle演示
沒有進一步的信息,這是一個通用的SQL問題。溶劑將在sql語句中加入。 –
http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html – hakre