SQL语句中如何完成某一个字段,某一个范围的替换 50

例如数据库里面如下表姓名日期是否出勤孙阳2019年3月1日N孙阳2019年4月1日Y孙阳2019年5月1日N请问通过什么语句可以达到把孙阳4月份“是否出勤”字段改成N的效... 例如数据库里面如下表
姓名 日期 是否出勤
孙阳 2019年3月1日 N
孙阳 2019年4月1日 Y
孙阳 2019年5月1日 N
请问通过什么语句可以达到把孙阳4月份“是否出勤”字段改成N的效果,注意是批量修改的,4月每天的
展开
 我来答
一颗程序猿o_0
2019-05-17 · TA获得超过6298个赞
知道大有可为答主
回答量:5403
采纳率:77%
帮助的人:1356万
展开全部
可以
如果你的"日期"这个字段是日期类型的, 用函数取一下年月作为where条件的一部分进行update就可以了
如果是字符串类型, 可以用字符串函数(left, right, substring等) 取出年月, 作为where条件进行update
追问
可否给出具体语句,我不太会
追答

以SQL Server举例

日期类型的, 比如:

UPDATE [表名]
SET [是否出勤]='N'
WHERE DATEDIFF(MONTH, [日期], '2019-04-01')=0
-- 或者
-- WHERE YEAR([日期])=2019 AND MONTH([日期])=4
-- 或者
-- WHERE [日期] BETWEEN '2019-04-01' AND '2019-04-30'

字符串类型的(如果可以的话也可以先用函数转成日器类型), 比如:

WHERE LEFT([日期], 4)='2019' AND SUBSTRING(@v,6,1)='4'
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式