SQL 语句中周六到周日的表达

在做一个网吧收费系统,需要更新网吧收费数据:把周六到周日的收费改到平常的一半,每小时计算。如下图这样写提醒数据库类型转换失败,求教图片说明

 SELECT *
FROM your_table
WHERE ((DATEPART(dw, date_created) + @@DATEFIRST) % 7)  IN (0, 1)

楼主你确定update语句这么写?
不应该是
update record
set fee = fee/2
where begintime between 'saturday' and 'sunday'

 DECLARE @t TABLE (
    id INT IDENTITY(1,1) PRIMARY KEY,
    Fee INT,
    BeginTime DATETIME
)
INSERT INTO @t (Fee,BeginTime) VALUES(2,'2016-07-22')
INSERT INTO @t (Fee,BeginTime) VALUES(2,'2016-07-23')
INSERT INTO @t (Fee,BeginTime) VALUES(2,'2016-07-24')

SELECT *,DATEPART(dw,BeginTime) AS dw FROM @t
/*
id  Fee BeginTime               dw
1   2   2016-07-22 00:00:00.000 6
2   2   2016-07-23 00:00:00.000 7
3   2   2016-07-24 00:00:00.000 1 
*/
UPDATE @t SET Fee=Fee/2 WHERE DATEPART(dw,BeginTime) IN (7,1)

SELECT * FROM @t 
/*
id  Fee BeginTime
1   2   2016-07-22 00:00:00.000
2   1   2016-07-23 00:00:00.000
3   1   2016-07-24 00:00:00.000
*/