mysql中case语句返回的结果不是预期结果

预期返回第二列内容应该是A:衣服……
不知道为什么会返回0
请忽略ELSE语句的位置错误
请帮忙纠错,谢谢

img

你这个case when 的else null位置写错了,语法应该是

case 
when 条件A  then 值A
when 条件B  then 值B
else 值C
end

另外,你这问题说是mysql,标签又选个mssql,到底是哪个?

看看你数据格式到底是什么,最好是text或者varchar2之类的
如果是char(20)这种格式,那么会在字符串后面补满\0,补齐20个字符,这样你做比较的时候就不会相等

mysql的连接函数应该用concat,||在mysql中的用法相当于 or