如何在 mssql 中返回每天的所有 id



我有一个表CLIENT(id,name,date)。 在 MSSQL 中。 如何返回每天的所有 ID。 例如,假设我有一个轮询器,我想将脚本插入到每天轮询一次的轮询器中。 什么脚本将返回今天创建的所有 ID?

假设date是一个没有时间成分的日期,获取当前日期记录的最简单方法是:

select id
from client
where date = cast(getdate() as date);

如果有时间部分,则使用:

where date >= cast(getdate() as date) and date < cast(getdate() + 1 as date)

请注意,函数 ( cast() ) 不在列上,而是在 getdate() 上。 这允许查询优化器在date上使用索引,如果适用的话。

使用 DATEDIFF 函数获取 db 中的日期时间与当前日期之间的差异

SELECT ID FROM Client WHERE DATEDIFF(day, Date, GETDATE()) = 0;
SELECT id
FROM CLIENT
ORDER BY date DESC

最新更新