j3r*_*own 2 t-sql sql-server case coalesce isnull
我希望以下内容SQL statement能够归来b.
你能指出我做错了什么吗?
SELECT CASE WHEN ISNULL(0,'')='' THEN 'a' ELSE 'b' END
Run Code Online (Sandbox Code Playgroud)
它来自数据类型的转换.您将整数与字符进行比较
如果你跑
SELECT CASE WHEN ISNULL(CAST(0 AS VARCHAR(255)),'') = '' THEN 'a' ELSE 'b' END
Run Code Online (Sandbox Code Playgroud)
你将得到b
否则''将被转换为0的整数,从而使得比较0 = 0,这是真的,因此返回'a'.