Sql server 2008 如何将逻辑构建到计算字段中?
在我的数据库中,我有一个计算列,它连接两个字段以创建屏幕显示名称。计算列的公式是Sql server 2008 如何将逻辑构建到计算字段中?,sql-server-2008,Sql Server 2008,在我的数据库中,我有一个计算列,它连接两个字段以创建屏幕显示名称。计算列的公式是([LastName]+',)+[FirstName]) 这个公式可以很好地工作,除了有一个真实的姓氏,但名字是“-”,一个连字符。从数据的角度来看,这在某些情况下是可以接受的。在这种情况下,名称显示为“Smith,-”。在这种情况下,如果没有真正的名字,我们不希望显示逗号和连字符。它应该显示为“Smith” 在我的computed字段中,我如何构建一些逻辑来测试名字中的连字符,如果它存在,如何相应地构建显示名称?我
([LastName]+',)+[FirstName])
这个公式可以很好地工作,除了有一个真实的姓氏,但名字是“-”,一个连字符。从数据的角度来看,这在某些情况下是可以接受的。在这种情况下,名称显示为“Smith,-
”。在这种情况下,如果没有真正的名字,我们不希望显示逗号和连字符。它应该显示为“Smith
”
在我的computed字段中,我如何构建一些逻辑来测试名字中的连字符,如果它存在,如何相应地构建显示名称?我收到了混合消息。如果是连字符,是否显示?“没有真正的名字”是指连字符、NULL、空字符串还是其他什么?能否显示一些示例数据(演示所有可能的情况)和所需的结果?
AS (LastName + COALESCE(', ' + NULLIF(Firstname, '-'), ''))