我正在跨字段创建一个计算列,其中一些字段可能为空。
问题是,如果这些字段中的任何一个为空,则整个计算列也将为空。我从 Microsoft 文档中了解到,这是预期的,可以通过设置 SET CONCAT_NULL_YIELDS_NULL 关闭。但是,我不想更改此默认行为,因为我不知道它对 SQL Server 其他部分的影响。
有没有办法让我只检查列是否为空,并且仅在计算列公式不为空时将其内容附加到计算列公式中?
您可以使用ISNULL(....)
SET @Concatenated = ISNULL(@Column1, '') + ISNULL(@Column2, '')
如果列/表达式的值确实为 NULL,则将使用指定的第二个值(此处:空字符串)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)