案件评估后,MySQL案例声明未返回适当的消息



我正在从汽车表中选择Enginestatus字段,查询看起来像: -

select engineStatus from car LIMIT 1

汽车表列可以具有1或0的值。假设Enginestatus设置为1,上述查询将返回1。

我想返回 ON,如果enginestatus = 1或返回 OFF当enginestatus = 0

我尝试了以下查询,但是SQL引发了一个错误

SELECT ( case engineStatus = 1 then SET engineStatus = 'ON' else SET status = 'OFF') FROM `car` WHERE 1

mysql说

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'then SET engineStatus = 'ON' else SET engineStatus = 'OFF') FROM `car` WHERE 1 LI' at line 1

如何在mysql?

中实现这一目标

您错过了WHEN,而无需SET

正确的语法是:

SELECT 
   ( CASE
       WHEN engineStatus = 1 THEN 'ON' 
       ELSE 'OFF'
     END
    ) AS status
FROM `car` 
WHERE 1

应该是:

SELECT ( case WHEN engineStatus = 1 then 'ON' else  
'OFF' END) FROM `car`;

最新更新