我有以下SQL表列...SQL SELECT ID和項目的數量在同一個表
id | item | position | set
---------------------------
1 | 1 | 1 | 1
2 | 1 | 1 | 2
3 | 2 | 2 | 1
4 | 3 | 2 | 2
在單查詢我需要得到滿足set='1'
,同時該行的所有ID統計在同一個表中有多少個與item
號碼相關的實例,而不管set
。
這是我一直在擺弄那麼遠,
SELECT
j1.item,
(SELECT count(j1.item) FROM table_join AS j2) AS count
FROM
table_join AS j1
WHERE
j1.set = '1';
...雖然子查詢返回多個行。通過上述數據的第一個項目應具有計數2,所有其他項目應該有1
您使用的是什麼RDBMS? – 2014-10-02 01:56:07
這沒有多大意義。你需要一種方式,但所有的方式都是另一種方式?這是功課嗎? – MPelletier 2014-10-02 02:07:02
這是HTML模板的專用JOIN表。當刪除模板時,我需要計算這些項目是否被多個模板使用,如果是的話,我不應該刪除該項目。我試圖保持我的數據庫清理未使用過期的數據。另外我使用的是MySQL,但是因爲Oracle是邪惡的,所以在寫作過程中我寫了它與PostgreSQL儘可能兼容。 – John 2014-10-02 02:10:58