我有兩個表user_profile
和tracked_search
。 user_profile
表具有用戶詳細信息,tracked_search
跟蹤用戶進行的搜索。獲取所有日期以及來自表格的數據
每當用戶進行搜索時,此搜索條目將進入tracked_search
表。如果沒有搜索到任何特定日期,則tracked_search
中不會添加任何內容。
我需要開發一個報告,我需要在每個月的所有日子顯示有多少用戶進行搜索。
例如
Date user_count
2017-10-1 4
2017-10-2 0
2017-10-3 0
2017-10-4 3
.
.
2017-10-31 5
我已經寫了下面的查詢
SELECT ts.created , count(distinct ts.user_id) FROM tracked_search ts, user_profile u
WHERE ts.created>=(CURDATE()-INTERVAL 1 MONTH) AND u.id = ts.user_id
group by ts.created;
,但我得到
Date user_count
2017-10-1 4
2017-10-4 3
我需要打印所有天的值,如果沒有條目是有一個特定的日期應該是零。
我正在使用mysql。
事項一般在應用程序代碼中最好的解決,如果這是可用的。 – Strawberry
但我需要發送每一天的數據。在Java中,我將不得不做一個檢查,看看哪些日期不存在,然後插入這些日期爲零作爲清單中的計數。這個過程是可以避免的。 – Suyash