我在 SQL Server 2005 中有一个表,其中包含两个字段日期时间,一个是开始另一个结束。
例子
select Start , End from launchings where id = 210423 order by 1 asc
我的结果是
2013-11-01 08:30:00.000 2013-11-01 12:00:00.000
2013-11-01 13:00:00.000 2013-11-01 19:00:00.000
2013-11-01 19:00:00.000 2013-11-01 20:00:00.000
2013-11-01 19:00:00.000 2013-11-01 20:00:00.000
2013-11-04 08:30:00.000 2013-11-04 12:00:00.000
2013-11-04 13:00:00.000 2013-11-04 19:30:00.000
我需要获取一天的第一次和最后一次以及它们之间的间隔,例如午餐时间
示例 Day 04 - 我想要的结果
Day Start Start interval End interval End
2013-11-04 - 08:00 12:00 13:00 19:30
2013-11-01 - 08:30 12:00 13:00 20:00
开始和结束我做了。我需要间隔
SELECT
convert(char(10), DATEADD(DAY, DATEDIFF(DAY, 0, Inicio), 0),103) AS Day,
MIN(convert(char(5),Inicio,108)) AS MinDate,
MAX(convert(char(5),Fim,108)) AS MaxDate
from Lancamentos where matricula = 210423
GROUP BY
DATEADD(DAY, DATEDIFF(DAY, 0, Inicio), 0)
结果
Day MinDate MaxDate
01/11/2013 08:30 20:00
04/11/2013 08:30 19:30