我正在處理一個 SQL 專案(涉及一個庫資料庫),我很難弄清楚如何進行條件計數。
所以,我有 4 張桌子:Imprumuturi、Cititori、Autori、Carti。我需要列出當前有多個借用“Carti”的“Cititori”。
我試著用
SELECT cititori.nume_cititor,COUNT(imprumuturi.pk_cititor)
AS numar_imprumuturi FROM cititori, imprumuturi
WHERE imprumuturi.data_return IS NULL GROUP BY cititori.nume_cititor
HAVING COUNT(imprumuturi.pk_cititor)>1
ORDER BY cititori.nume_cititor;
雖然它列出了所有的“Cititori”,但它并沒有計算應有的活躍借用“Carti”的數量。
我可以獲得有關如何使其作業的提示或幫助嗎?
這些是我的資料庫的欄位
uj5u.com熱心網友回復:
似乎你錯過了表格之間的關系
SELECT cititori.nume_cititor,COUNT(imprumuturi.pk_cititor)
AS numar_imprumuturi
FROM cititori
INNER JOIN imprumuturi ON imprumuturi.pk_cititori = cititori.pk_cititori
WHERE imprumuturi.data_return IS NULL
GROUP BY cititori.nume_cititor
HAVING COUNT(imprumuturi.pk_cititor)>1
ORDER BY cititori.nume_cititor;
作為建議,您不應使用基于逗號分隔表的名稱和 where 條件的舊隱式連接 sintax,而是使用顯式連接 sintax
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/411038.html
標籤:
