Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 计算给定日期和当前时间戳之间的天数_Sql_Sql Server 2008_Date - Fatal编程技术网

Sql 计算给定日期和当前时间戳之间的天数

Sql 计算给定日期和当前时间戳之间的天数,sql,sql-server-2008,date,Sql,Sql Server 2008,Date,我正试图获取帐户到期前的剩余天数,以便我可以向我的用户发送电子邮件通知他们。我有正确的“Where”语句,但我不确定如何选择差作为整数。 到目前为止,我已经: SELECT (DATE_EXPIRE-CURRENT_TIMESTAMP),EMAIL FROM [myTable] WHERE (DATE_EXPIRE - CURRENT_TIMESTAMP <= 10) AND (DATE_EXPIRE - CURRENT_TIMESTAMP >= 1) 选择(到期日期-当前时间

我正试图获取帐户到期前的剩余天数,以便我可以向我的用户发送电子邮件通知他们。我有正确的“Where”语句,但我不确定如何选择差作为整数。 到目前为止,我已经:

SELECT (DATE_EXPIRE-CURRENT_TIMESTAMP),EMAIL 
FROM [myTable] 
WHERE (DATE_EXPIRE - CURRENT_TIMESTAMP <= 10) AND (DATE_EXPIRE - CURRENT_TIMESTAMP >= 1)
选择(到期日期-当前时间戳),发送电子邮件
从[myTable]
其中(到期日期-当前时间戳=1)
这是我实际提倡使用BETWEEN的少数几个案例之一。尽管我仍然更喜欢设置明确的边界:

DECLARE @tomorrow DATE = DATEADD(DAY, 1, CURRENT_TIMESTAMP);

SELECT DATEDIFF(DAY, CURRENT_TIMESTAMP, DATE_EXPIRE),EMAIL 
FROM dbo.[myTable] 
WHERE DATE_EXPIRE >= @tomorrow
AND DATE_EXPIRE < DATEADD(DAY, 10, @tomorrow);
DECLARE@moody DATE=DATEADD(第1天,当前时间戳);
选择DATEDIFF(日期、当前时间戳、到期日期)、电子邮件
来自dbo。[myTable]
明天哪里到期>=@
和到期日期<日期添加(第10天,明天);
您不应该使用速记数学(例如
datetime-integer
),因为虽然它适用于datetime/SMALLDATETIME,但如果您将数据类型更改为DATE、DATETIME2等,它就会中断

对于我关于日期范围查询的许多漫谈:

这是我实际提倡使用BETWEEN的少数几个案例之一。尽管我仍然更喜欢设置明确的边界:

DECLARE @tomorrow DATE = DATEADD(DAY, 1, CURRENT_TIMESTAMP);

SELECT DATEDIFF(DAY, CURRENT_TIMESTAMP, DATE_EXPIRE),EMAIL 
FROM dbo.[myTable] 
WHERE DATE_EXPIRE >= @tomorrow
AND DATE_EXPIRE < DATEADD(DAY, 10, @tomorrow);
DECLARE@moody DATE=DATEADD(第1天,当前时间戳);
选择DATEDIFF(日期、当前时间戳、到期日期)、电子邮件
来自dbo。[myTable]
明天哪里到期>=@
和到期日期<日期添加(第10天,明天);
您不应该使用速记数学(例如
datetime-integer
),因为虽然它适用于datetime/SMALLDATETIME,但如果您将数据类型更改为DATE、DATETIME2等,它就会中断

对于我关于日期范围查询的许多漫谈: