2

カウントが 0 の場合でも、1 日のすべての時間のデータを取得する必要があります。現在、次のように出力されます。

clicks--hour
 1----- 7
 2----- 13

今の私のクエリ:

SELECT count(*) as clicks, hour(time) as hour FROM clicks WHERE DATE(time) = DATE(NOW()) GROUP BY hour

お時間をいただきありがとうございます

#

解決し、どうにか自分でそれを行うことができました。

SELECT h.Hour
     , COUNT(id) AS clicks
  FROM ( SELECT 0 AS Hour
         UNION ALL SELECT 1   
         UNION ALL SELECT 2 
         UNION ALL SELECT 3 
         UNION ALL SELECT 4 
         UNION ALL SELECT 5 
         UNION ALL SELECT 6 
         UNION ALL SELECT 7 
         UNION ALL SELECT 8 
         UNION ALL SELECT 9 
         UNION ALL SELECT 10 
         UNION ALL SELECT 11
         UNION ALL SELECT 12
         UNION ALL SELECT 13
         UNION ALL SELECT 14
         UNION ALL SELECT 15
         UNION ALL SELECT 16
         UNION ALL SELECT 17
         UNION ALL SELECT 18
         UNION ALL SELECT 19
         UNION ALL SELECT 20
         UNION ALL SELECT 21
         UNION ALL SELECT 22
         UNION ALL SELECT 23) AS h
LEFT OUTER
  JOIN clicks
    ON hour(time) = h.Hour
   AND DATE(time) = date(now())
GROUP 
    BY h.Hour
4

1 に答える 1