【问题标题】:Combine first and last name and update into full name column for each row合并名字和姓氏并更新为每行的全名列
【发布时间】:2016-11-18 13:59:09
【问题描述】:

对于每个名字和姓氏,我只想将它们合并并更新到同一个“名称”表中的全名列中。

这应该发生在表中的每一行。这些列是 Id、FirstName、LastName 和 FullName。

任何帮助将不胜感激

update Names n 
set n.FullName = (
    select CONCAT(FirstName,' ',LastName)  
    from Names a 
    where n.Id = a.Id
)
where n.FullName is null 
and n.FirstName is not null and n.LastName is not null

【问题讨论】:

标签: sql-server tsql


【解决方案1】:

此更新为空白或具有 NULL 值的 FullName 列。

UPDATE Names
SET FullName = ISNULL(FirstName + ' ','') +  ISNULL(LastName,'')
WHERE ISNULL(FullName,'') = '' 

编辑

UPDATE Names
SET FullName = FirstName + ' ' + LastName
WHERE ISNULL(FullName,'') = '' AND  ISNULL(FirstName,'') <> '' AND ISNULL(LastName,'') <> ''

【讨论】:

  • 如果 FirstName 或 LastName 为空,我想跳过该行,所以我没有只有名字或姓氏的全名
  • 并且 n.FirstName 不为空且 n.LastName 不为空
  • 看起来很棒!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-22
相关资源
最近更新 更多