我希望能夠返回0當我正在做一個計數,我最好不使用連接,因爲我的查詢不使用它們。在SQL計數查詢中包含零?
這是我的查詢。
SELECT count(user_id) as agencyLogins,
DATE_FORMAT(login_date, '%Y-%m-%d') as date
FROM logins, users
WHERE login_date >= '2015-02-10%' AND login_date < '2016-02-11%'
AND logins.user_id = users.id
GROUP BY DATE_FORMAT(login_date,'%Y-%m-%d')
它所做的是統計用戶登錄網站的次數。 它不計算零,但我想知道什麼時候沒有登錄。
我收到一個錯誤 - '字段列表'中的未知列't.user_id'我不知道爲什麼這不起作用。 (我的SQL知識不是很好) – Kieron606
@ Kieron606 Sry,認爲列名是user_id,它的實際ID,所以現在查詢將起作用。 – sagi
您需要COUNT(s.id)而不是COUNT(*)。因爲您需要用戶的登錄次數,而不是行數(即,如果用戶未登錄1行仍將返回,因此計數在當前解決方案中爲1)。 – Kickstart