【发布时间】:2017-11-17 01:39:34
【问题描述】:
我整天都在为 SQL 中一个非常简单的 case 语句而苦苦挣扎……
我有这段代码:
UPDATE `alugueis`
SET `status` = CASE
WHEN `pago_em` is null THEN 'Atrasado'
WHEN `pago_em` is '' THEN 'Atrasado'
ELSE `status`
END
WHERE `vencimento` <= CURDATE()
我得到的错误是:[1064][42000]: (conn:235) 你的 SQL 语法有错误;检查手册.......
我不认为我混淆了 CASE 的两种形式,或者我是吗?
非常感谢!
【问题讨论】:
-
这适用于哪个 RDBMS?请添加标签以指定您使用的是
mysql、postgresql、sql-server、oracle还是db2- 或完全其他的东西。