【发布时间】:2015-06-16 20:08:13
【问题描述】:
大家好,我正在尝试使用算法 how to calculate the number of Tuesdays between two dates in TSQL 来计算两个日期之间出现的天数。
我只是用我的日期替换了一些参数,但出现语法错误。我尝试删除 datetime 以使用 date 但仍然出现错误
select
datediff(day, -7, DATETIME('2015-06-30'))/7-datediff(day, -6, DATETIME('2015-05-28'))/7 AS MON,
datediff(day, -6, DATETIME('2015-06-30'))/7-datediff(day, -5,DATETIME('2015-05-28'))/7 AS TUE,
datediff(day, -5,DATETIME('2015-06-30'))/7-datediff(day, -4, DATETIME('2015-05-28'))/7 AS WED,
datediff(day, -4, DATETIME('2015-06-30'))/7-datediff(day, -3, DATETIME('2015-05-28'))/7 AS THU,
datediff(day, -3,DATETIME('2015-06-30'))/7-datediff(day, -2,DATETIME('2015-05-28'))/7 AS FRI,
datediff(day, -2, DATETIME('2015-06-30'))/7-datediff(day, -1,DATETIME('2015-05-28'))/7 AS SAT,
datediff(day, -1,DATETIME('2015-06-30'))/7-datediff(day, 0, DATETIME('2015-05-28'))/7 AS SUN
【问题讨论】:
-
您不能在
mysql中使用datediff(day, count, date),就像documentation 一样。mysql仅支持datediff(date, date)。 -
请您确认您使用的是 MySQL 还是 T-SQL (通常是 Microsoft SQL-Server)?此外,在完整的 SQL 语句中提供实际的错误消息通常会很有帮助。
-
这太奇怪了,我整天都得到-9.4286,你知道这是怎么回事吗?