【发布时间】:2011-10-14 22:37:54
【问题描述】:
我正在尝试查询具有架构的表:
CREATE TABLE [dbo].[FIN_MeetingDisplay-DefaultConfig](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [varchar](150) NOT NULL,
[value] [nvarchar](max) NOT NULL
)
表中的两个值存储了应启用或禁用节电的时间:
晚上 10:00 启用省电
上午 08:00 禁用PowerSave
我想要做的是查询表以查看当前时间是否在 EnablePowerSave 和 DisablePowerSave 窗口之间。
我目前正在使用以下查询它,它总是返回 false,这是因为它使用的是今天的日期。如果在上午 8 点之后使用明天的日期,而在上午 8 点之前使用今天的日期,那么更改查询的最佳方法是什么?
SELECT CONVERT(DATETIME, CAST(GETDATE() AS VARCHAR(11)) + ' ' + VALUE, 103)
FROM dbo.[FIN_MeetingDisplay-DefaultConfig]
WHERE name = 'EnablePowerSave'
谢谢,
马特
【问题讨论】:
标签: sql-server-2005 tsql datetime time