日期:2014-05-16  浏览次数:20674 次

如何根据日期间断查询?
我现在要查询7天的数据,但是我还要根据每天00:00:00到12:00:00的数据和12:00:00到00:00:00的数据这样来查询。这个怎么查询?求解。。。如果可以分组怎么分?我现在很纠结啊
------解决方案--------------------
时间段是分开显示还是一次显示但是以时间段做标识?最好给点测试数据和期待结果
------解决方案--------------------
具体需要的结果是什么样子的?
------解决方案--------------------

WITH a1 (cz_time,coud) AS 
(
SELECT CAST('2014-04-08 10:22:45.780' AS DATETIME) ,1 UNION ALL
SELECT '2014-04-08 11:22:45.780',1 UNION ALL
SELECT '2014-04-08 13:22:45.780',1 UNION ALL
SELECT '2014-04-08 14:22:45.780',1 UNION ALL
SELECT '2014-04-08 15:22:45.780',1 UNION ALL
SELECT '2014-04-09 11:22:45.780',1 UNION ALL
SELECT '2014-04-09 12:22:45.780',1 UNION ALL
SELECT '2014-04-09 13:22:45.780',1 UNION ALL
SELECT '2014-04-09 14:22:45.780',1 UNION ALL
SELECT '2014-04-09 15:22:45.780',1
)
SELECT CONVERT(CHAR(10),cz_time,120) cz_date
,SUM(CASE WHEN RIGHT(Convert(VARCHAR(20),cz_time,0),2)='AM' THEN coud ELSE 0 END) AM
,SUM(CASE WHEN RIGHT(Convert(VARCHAR(20),cz_time,0),2)='PM' THEN coud ELSE 0 END) PM
FROM a1
GROUP BY CONVERT(CHAR(10),cz_time,120)