Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 如何将逻辑构建到计算字段中?_Sql Server 2008 - Fatal编程技术网

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, '-'), ''))