sql - 在 SQL Server 中查找最近的日期

标签 sql sql-server date

我有一个带有 DateTime Y 列 的表 dbo.X,其中可能有数百条记录。

我的存储过程有参数@CurrentDate,我想找出上表dbo.XY列中的日期,其中小于且最接近 @CurrentDate。

如何找到它?

最佳答案

where 子句将匹配日期小于 @CurrentDate 的所有行,并且由于它们按后代顺序排序,因此 TOP 1 将是最接近当前日期的日期。

SELECT TOP 1 *
FROM x
WHERE x.date < @CurrentDate
ORDER BY x.date DESC

关于sql - 在 SQL Server 中查找最近的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14023145/

相关文章:

java - QueryDSL 显式连接和 where 子句之间的区别?

sql - 在 BigQuery Standard SQL 中获取最后一个斜杠后的字符串

不影响其他操作的MySql查询

mysql - 与项目和属性的联系..1 列还是多列?

sql - 为什么即使用户登录的日期格式设置设置为 'yyyy-mm-dd',ISO 8601 日期格式 'mdy' 字符串文字仍然有效

sql-server - 从存储过程插入期间出现 "The precision is invalid"?

javascript - 在 React.Js 组件中仅获取当前日期的秒数

Oracle:到日期/时间的纪元毫秒,包括时区

c# - .NET 未检测到任何 SQL Server 实例

sql - 知道15分钟的日期间隔中的日期是SQL SERVER