我有這樣的查詢來獲得的第一個結果,我從這個post較早想,sql查詢:如何讓父母沒有孩子?
SELECT parents.tag_id AS ParentID,
parents.tag_name AS ParentName,
COUNT(childs.tag_id) AS TotalChildren
FROM root_tags AS parents
LEFT OUTER JOIN root_tags AS childs
ON parents.tag_id = childs.parent_id
WHERE parents.parent_id IS NULL
GROUP BY parents.tag_id, parents.tag_name
ORDER BY parents.tag_id
它返回,
ParentID ParentName TotalChildren
3 Tagname-1 2
5 tagname-2 2
6 tagname-3 1
9 tagname-4 1
18 tagname-10 0
24 tagname-13 0
26 tagname-14 0
28 tagname-15 0
但我現在還有一個問題,我想回到那個有父母不是孩子可言,
ParentID ParentName TotalChildren
18 tagname-10 0
24 tagname-13 0
26 tagname-14 0
28 tagname-15 0
所以我試圖使查詢到這個,
SELECT
parents.tag_id AS ParentID,
parents.tag_name AS ParentName,
COUNT(childs.tag_id) AS TotalChildren
FROM root_tags AS parents
LEFT OUTER JOIN root_tags AS childs
ON parents.tag_id = childs.parent_id
WHERE parents.parent_id IS NULL
AND COUNT(childs.tag_id) = '0'
GROUP BY parents.tag_id, parents.tag_name
ORDER BY parents.tag_id
但它返回一個錯誤#1111 - Invalid use of group function
我怎樣才能解決呢?
明白了!謝謝! – laukok