在数据库中,我有两列,一列有DATE
,另一列有HOUR
,我必须在HOUR
列中查看一段时间并进行更改。并且还要查找每个星期五并将其放在特定的HOUR
中,但没有任何工作。
这是搜索HOUR
并更改的代码,并且已经在运行:
UPDATE [dbo].[Clockings] set [Hour] = DATEADD(second,
(ABS(CHECKSUM(NEWID())) % 900), '07:45:00.000') where [Hour] >
'04:00:00.000' and [Hour] < '07:45:00.000'
UPDATE [dbo].[Clockings] set [Hour] = DATEADD(second,
(ABS(CHECKSUM(NEWID())) % 900), '17:30:00.000') where [Hour] >
'17:45:00.000' and [Hour] < '23:59:59.000'
搜索DATE
表没有任何效果。
答案 0 :(得分:0)
回答sql-server 2012或更高版本:
Update Clockings
Set ...
Where DatePart(dw, [Date]) = 5; --Friday
注意,检查哪一天是一周的第一天。 https://msdn.microsoft.com/en-au/library/ms181598.aspx
DateName()
功能也适用。