SQL 想新建一列通过日期对比做条件赋值但是一直报错,如何解决?

SELECT (case when convert(sv.[VISDAT_RAW])<'2021-12-31' then 'y' else null end) "第一批"
, sv.[Subject] "Subject name or identifier"
, sv.[StudyEnvSiteNumber] "Site ID"
, sv.[InstanceName] "Folder instance name"
, sv.[SaveTS] "Timestamp of last save in clinical views"
, sv.[VISDAT_RAW] "访视日期 "
FROM project_sv sv

目的是希望在表格最左新增一列,只要访视日期在2021/12/31之前就赋值y,否则就空值,但是一直报错,实在不知道怎么改了QAQ

不知道是手误还是不了解convert函数
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。

SELECT (case when convert(VARCHAR(50),sv.[VISDAT_RAW])<'2021-12-31' then 'y' else null end) "第一批"
, sv.[Subject] "Subject name or identifier"
, sv.[StudyEnvSiteNumber] "Site ID"
, sv.[InstanceName] "Folder instance name"
, sv.[SaveTS] "Timestamp of last save in clinical views"
, sv.[VISDAT_RAW] "访视日期 "
FROM project_sv sv
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632