每当此查询的值为null时
SELECT ISNULL(someDateTime,'')
FROM someTable
Run Code Online (Sandbox Code Playgroud)
结果是
someDateTime ------------ 1900-01-01 00:00:00.000
我希望它是"不",所以如果我运行这个:
SELECT ISNULL(someDateTime,'No')
FROM someTable
Run Code Online (Sandbox Code Playgroud)
那就是这个错误:
从字符串转换datetime时转换失败.
怎么做?提前致谢!
表达式的结果需要是单一类型.如果你想要一个字符串(并且你这样做,因为'No'不是DateTime),你需要将datetime转换为这样的字符串:
SELECT ISNULL(cast(someDatetime as varchar(20)), 'No') FROM someTable
Run Code Online (Sandbox Code Playgroud)
正如其他人所建议的那样,这样的代码闻起来很糟糕,您可能希望将null传递给客户端组件并在那里进行转换.