MySQL如何处理传入case语句的null

MySQL如何处理传入case语句的null,mysql,case,Mysql,Case,我在MySQL中使用case语句 当f.winner字段为空时,它返回“Loss”,而不是f.method。因此,看起来MySQL case语句不能像这样处理空格和null ( CASE f.winner WHEN :fighter_id THEN "Win" WHEN NULL OR "0" THEN f.method ELSE "Loss" END ) AS result, 有时f.winner和f.method都是空的,我只

我在MySQL中使用case语句

f.winner
字段为空时,它返回“Loss”,而不是
f.method
。因此,看起来MySQL case语句不能像这样处理空格和null

(
    CASE f.winner
        WHEN :fighter_id THEN "Win"
        WHEN NULL OR "0" THEN f.method
        ELSE "Loss"
    END
) AS result,

有时
f.winner
f.method
都是空的,我只希望在这些情况下结果返回为空。

当子句:

(
    CASE IFNULL(f.winner, "0")
        WHEN :fighter_id THEN "Win"
        WHEN "0" THEN f.method
        ELSE "Loss"
    END
) AS result,

这起作用了。当“0”或“”时,我不得不将其改为
,然后改为f.method
,因为它返回了所有空格的损失。