【发布时间】:2014-05-15 01:07:59
【问题描述】:
我一直在尝试将名字和姓氏组合成一个字段,中间有一个空格,例如 John Doe。
当我执行以下 concat 时,我得到的是 JohnDoe 而不是 John Doe
SELECT LTRIM(RTRIM(dbo.gpEmployeeList.firstName)) AS [First Name], LTRIM(RTRIM(dbo.gpEmployeeList.LASTNAME)) AS [Last Name],
dbo.gpEmployeeList.SecurityCode AS [Security Code], dbo.gpEmployeeList.PTO AS [Available PTO], { fn CONCAT(LTRIM(RTRIM(dbo.gpEmployeeList.firstName)),
dbo.gpEmployeeList.LASTNAME) } AS DisplayName
FROM dbo.MonthName INNER JOIN
dbo.gpEmployeeList ON dbo.MonthName.monthNumber = dbo.gpEmployeeList.BIRTHMONTH LEFT OUTER JOIN
dbo.domainAccounts ON dbo.gpEmployeeList.LASTNAME = dbo.domainAccounts.sn
有什么修复建议吗?我必须进行修剪以消除名称之间的一堆空格。
【问题讨论】:
-
在
CONCAT方法中添加一个空格。concat(field, ' ', field2). -
当我添加空间时,我得到 CONCAT Function requires 2 arguments 错误。我希望这也能早点奏效。
-
不知道为什么,在这里为我工作:sqlfiddle.com/#!6/fc7c51/1
-
我自己也不知道为什么。这对我来说肯定是个头疼的事。
-
您不必使用
concat()--+的工作方式相同。field + ' ' + field
标签: sql sql-server concatenation