如何在SQL中将Gabon对应的EntryDate字段设置为NULL?
正确的SQL实现方案
你的CASE语句错误在于THEN ENTRYDATE IS NULL是布尔判断逻辑,会返回true或false,而非将字段值设为NULL。正确写法如下:
CASE WHEN COUNTRY = 'GABON' THEN NULL ELSE ENTRYDATE END AS ENTRYDATE
这段代码的作用是:
- 当
Country字段值为GABON时,将EntryDate替换为NULL - 其他国家的记录,保留
EntryDate的原始值
如果省略ELSE子句,非GABON的记录EntryDate会被默认设为NULL,这通常不符合需求,因此必须添加ELSE分支保留原始值。
内容的提问来源于stack exchange,提问作者David Charles
相关产品推荐
相关产品推荐

