[英]SQL Greater than, Equal to AND Less Than
我想创建一个如下所示的查询,但我不确定如何正确编码,我希望它在StartTime的1小时内返回所有预订,这是我想出的:
SELECT BookingId, StartTime
FROM Booking
WHERE StartTime <=> 1.00
有可能吗? 还是有办法围绕它吗?
我在网上找到的所有内容都不是在同一个查询中使用大于,等于和小于全部。
假设你使用sql server:
WHERE StartTime BETWEEN DATEADD(HOUR, -1, GetDate())
AND DATEADD(HOUR, 1, GetDate())
如果开始时间是日期时间类型,那么你可以使用类似的东西
SELECT BookingId, StartTime
FROM Booking
WHERE StartTime >= '2012-03-08 00:00:00.000'
AND StartTime <= '2012-03-08 01:00:00.000'
显然你会想要在时间上使用你自己的值,但这应该给你1小时内的所有内容,包括上限和下限。
您可以使用GETDATE()函数获取今天的当前日期。
declare @starttime datetime = '2012-03-07 22:58:00'
SELECT BookingId, StartTime
FROM Booking
WHERE ABS( DATEDIFF( minute, StartTime, @starttime ) ) <= 60
这样的事情应该有效
SELECT BookingId, StartTime
FROM Booking
WHERE StartTime between dateadd(hour, -1, getdate()) and getdate()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.