0
我遇到了有關我的查詢的問題。我將使用一個例子。因此,對於名爲'膿腫'的疾病名稱,在我診斷的表格中已經診斷過兩次,但我只能得到1的數目。但是,當我在診斷的表格中使用該疾病檢查它時,我得到2個。請重建我的答案在下面!錯誤的計數數
問題: 列出所有疾病名稱,並計算在診所 診斷每種疾病的次數。該列表是罕見疾病,因此只顯示 診斷計數小於5的疾病。注意:零小於5.提供SQL查詢和結果的數據。
我的回答:
SELECT disease.name, COUNT(*) AS number_of_disease_diagnosed
FROM disease
WHERE diseaseid IN (SELECT DISTINCT diseaseid FROM diagnosed)
GROUP BY disease.name
HAVING COUNT(*) <= 5
UNION
SELECT diseaseid,0
FROM disease
WHERE diseaseid NOT IN (SELECT DISTINCT diseaseid FROM diagnosed);
如何給我們提供架構,以便我們可以看到跨表的鏈接的基數? 「疾病名稱」是「疾病」的關鍵嗎?如果是這樣的話,爲什麼你會期望在'疾病'中每行有超過1個'disease.name'? – AntC
您的查詢有許多問題。請向我們展示「疾病」和「診斷」表格的最小樣本數據。你爲什麼撤銷@Strawberry編輯? –
增加了更多的信息傢伙 –