这是我正在尝试做的一个例子:
Select
S1.Name as S1Name,
S1.Itemcontent as S1ItemContent,
...
S2.Name as S2Name,
S2.Name as S2ItemContent,
**(S1.OrderValue * 1000*1000 + S2.OrderValue*1000 + S3.OrderValue) as OrderValue**
From (joining s1, s2 and s3 on a particular value)
Order by OrderValue
Run Code Online (Sandbox Code Playgroud)
当S1.OrderValue,S2.OrderValue或S3.OrderValue为null时,OrderValue也变为null.我希望SQL Server在这种情况下将空值视为0.我怎样才能做到这一点?
And*_*rew 11
使用isNull函数,例如
isnull(s1.ordervalue,0)
Run Code Online (Sandbox Code Playgroud)
如果值为null,则使用您提供的替代值作为第二个值.
合并返回第一个非空值。
**(coalesce(S1.OrderValue,0) * 1000 + coalesce(S2.OrderValue,0)*1000 + coalesce(S3.OrderValue,0)) as OrderValue
Run Code Online (Sandbox Code Playgroud)