0
,同時還使用WHERE
,但是當沒有發現一定ID
記錄,我想它返回NULL
,而不是隻是不返回任何東西,我想SUM()
存在沒有記錄。的SQLite3:返回NULL如果SUM()
初始代碼:
SELECT
ID,
SUM(CASE WHEN EVENTS = 3 THEN 1 ELSE 0 END)
FROM Events_ID
WHERE
YEAR = 2012
GROUP BY ID
,如果有沒有它的事件在2012年
然後我把它改爲看起來工作,但大約是100倍的速度較慢以下這將不會返回ID
!
SELECT
ID,
(SELECT
SUM(CASE WHEN EVENTS = 3 THEN 1 ELSE 0 END)
FROM EVENTS_ID r WHERE r.ID = t.ID AND r.YEAR = 2012)
FROM (SELECT * FROM Events_ID GROUP BY ID) as t;
有沒有辦法讓第二個查詢的輸出接近第一個查詢的速度?
是的,它甚至沒有跨過我的想法做到這一點哈哈。 – rwolst