方法一:
SELECT
t1.HOUR date,
COUNT( t2.HOUR ) dateCount
FROM
(
SELECT
DATE_FORMAT( DATE_SUB( DATE_FORMAT( NOW(), '%Y-%m-%d' ), INTERVAL ( -( @i := @i + 1 ) ) HOUR ), '%H' ) AS 'HOUR'
FROM
(
SELECT
a
FROM
( SELECT '1' AS a UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' ) AS a
JOIN ( SELECT '1' UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' ) AS b ON 1
) AS b,(
SELECT
@i :=- 1
) AS i
) t1
LEFT JOIN ( SELECT DATE_FORMAT( created_at, '%H' ) HOUR FROM ticket_record ) t2 ON t1.HOUR = t2.HOUR
GROUP BY
t1.HOUR
ORDER BY
t1.HOUR ASC
统计分析:
1.查询每天的小时
SELECT
DATE_FORMAT( DATE_SUB( DATE_FORMAT( NOW(), '%Y-%m-%d' ), INTERVAL ( -( @i := @i + 1 ) ) HOUR ), '%H' ) AS 'HOUR'
FROM
(
SELECT
a
FROM
( SELECT '1' AS a UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' ) AS a
JOIN ( SELECT '1' UNION SELECT '2' UNION SELECT '3' UNION SELECT '4' UNION SELECT '5' UNION SELECT '6' ) AS b ON 1
) AS b,(
SELECT
@i :=- 1
) AS i
2.关联业务查询统计
方法二:
SELECT
t1.HOUR date,
COUNT( t2.HOUR ) dateCount
FROM
(
SELECT
DATE_FORMAT( @cdate := DATE_ADD( @cdate, INTERVAL - 1 HOUR ), '%H' ) HOUR
FROM
( SELECT @cdate := DATE_ADD( DATE_FORMAT( NOW( ), '%y-%m-%d %H' ), INTERVAL + 1 HOUR ) FROM ticket_record ) t0
LIMIT 24
) t1
LEFT JOIN ( SELECT DATE_FORMAT( created_at, '%H' ) HOUR FROM ticket_record ) t2 ON t1.HOUR = t2.HOUR
GROUP BY
t1.HOUR
ORDER BY
t1.HOUR ASC
1.查询24条业务数据,格式化时间后进行累加
SELECT
DATE_FORMAT( @cdate := DATE_ADD( @cdate, INTERVAL - 1 HOUR ), '%H' ) HOUR
FROM
( SELECT @cdate := DATE_ADD( DATE_FORMAT( NOW( ), '%y-%m-%d %H' ), INTERVAL + 1 HOUR ) FROM ticket_record ) t0
LIMIT 24
2.关联业务查询统计