gpt4 book ai didi

sql - 在 SQL Server 2005 中按日期/时间查询

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

我有一个如此简单的问题,我觉得问这个问题很愚蠢。我不敢相信我在这件事上遇到了麻烦。

我有一个名为“Orders”的表。 “Orders”有一个名为“DateOrdered”的小日期时间字段。我需要在特定日期获得所有“订单”。我尝试了以下但没有成功:

SELECT * FROM Orders WHERE [DateOrdered]=2010-06-01

SELECT * FROM Orders WHERE [DateOrdered]='2010-06-01'

SELECT * FROM Orders WHERE [DateOrdered]=CAST('2010-06-01' AS smalldatetime)

我做错了什么?我不敢相信我什至会问这个问题。

最佳答案

第一个查询将日期与数字 2003 进行比较(2010 减 6 减 1) 转换成日期 '1905-06-27' .第二个和第三个查询适用于精确的日期值(即具有 00:00 时间分量),并且是等效的。

您的 smalldatetime 值中是否包含时间部分?在这种情况下,您可以在一个时间间隔内获取值:

SELECT * FROM Orders WHERE DateOrdered >= '2010-06-01' 
and DateOrdered < '2010-06-02'

注意 >= 的使用和 <而不是 between关键字,以排除任何可能具有精确值 2010-06-02 的记录.

关于sql - 在 SQL Server 2005 中按日期/时间查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3833279/

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