gpt4 book ai didi

sql-server - 获取日期时间列 = 今天的行

转载 作者:行者123 更新时间:2023-12-01 18:37:24 24 4
gpt4 key购买 nike

在 sql 2005 中,不是从日期部分年、月和日期构建查询,

是否有更简洁的方法来编写 where 子句?

最佳答案

在 SQL Server 2008 上,您将拥有一个新的 DATE 数据类型,您可以使用它来实现此目的:

SELECT (list of fields)
FROM dbo.YourTable
WHERE dateValue BETWEEN
CAST(GETDATE() AS DATE) AND DATEADD(DAY, 1, CAST(GETDATE() AS DATE))

CAST(GETDATE() AS DATE) 将当前日期和时间转换为仅日期值,例如返回 '​​2010-04-06' 表示 2010 年 4 月 6 日。添加一天基本上会选择今天的所有日期时间值。

在 SQL Server 2005 中,没有简单的方法可以做到这一点 - 最优雅的解决方案 I found here使用 DATETIME 的数字操作来实现相同的结果:

SELECT (list of fields)
FROM dbo.YourTable
WHERE dateValue BETWEEN
CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME) AND
DATEADD(DAY, 1, CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME))

关于sql-server - 获取日期时间列 = 今天的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2583228/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com