我有这个问题
SELECT ISNULL(LEFT(NULL, 8), '1234567890')
Run Code Online (Sandbox Code Playgroud)
我得到的结果是'1'而不是'1234567890'.我错过了什么?
我正在使用SQL Server 2014.
小智 5
ISNULL和COALESCE之间的一个区别是ISNULL将参数的长度限制为第一个,而COALESCE则不然.尝试以下方法来了解其中的差异
DECLARE @i AS VARCHAR(4) = NULL,
@j AS VARCHAR(6) = 'abcdefg'
SELECT ISNULL(@i, @j)
SELECT COALESCE (@i, @j)
Run Code Online (Sandbox Code Playgroud)