0
我正在開發一個系統,其中有一個類別和子類別的列表。我按照給定的數據庫結構如下:獲取沒有其他子類別的子類別的計數
category_id | category_name | Parent_id
1 India 0
2 US 0
3 Mumbai 1
4 Delhi 1
5 New Delhi 4
現在我有兩個主要類別(印度和美國)和這兩個父類的子類3。我想計算子類別的數量,其中有沒有進一步的子類別,即印度和美國
最頂部的父元素對於如
India
/ \
Mumbai Delhi
\
New Delhi
/ \
N1 N2
現在,我想父ID jsons與子類別的數量誰沒有其他子類別。 在這種情況下,計數應爲2,因爲孟買沒有子類別,新德里沒有子類別。
{"category_name" : "India", "Count" => "3"} // (Mumbai , N1, N2 because they have no further subcategories)
它應該在所有父類別的循環中完成。我試圖使用遞歸函數得到它,但沒有得到確切的結果。 有什麼幫助嗎?
編輯: 我有類似的SQLFIDDLE它,但它只顯示子類別的計數。我想要計數沒有更多子類別的子類別。 請參考給定的鏈接。 SQL Fiddle
我沒有得到你如何寫它。你能否根據我提供的SQLFIDDLE來做到這一點。 –
SELECT c.catid,c.Name,COUNT(a.catid)作爲CNT FROM c類 INNER JOIN類別 ON a.pcatid = c.catid GROUP BY c.pcatid,c.Name UNION 選擇c.pcatid,c.Name,0 as cnt FROM category c where c.catid not in(從類別中選擇pcatid) – Suresh
查看結果。它並不像我期待的那樣工作。請再讀一遍我的問題。輸出中應該有兩個父類別,這些子類別沒有其他子元素。 –