我有一个表,我想在整个事情中更新一列。我有这个用于连接。
(COALESCE(f1,'')+';'+ COALESCE(f2,'')+';'+ COALESCE(f3,''))
当我将此插入我的列时,它会添加新列并更新失败。有没有办法更新MS SQL中的值并使用它来更改值?
由于
update dbo.tblGeoTable (CombinedEmail)
select (COALESCE(f1,'')+';'+ COALESCE(f2,'')+';'+ COALESCE(f3,''))
from dbo.tblGeoTable
这是数据
F1 = f1email@email.com
F2 = f2email@email.com
F3 = f3email@email.com
CombinedEmail = f1 + f2 + f3,但我需要;在那里分开它们,我需要在它的当前行中替换它。
答案 0 :(得分:2)
如果我理解你想要的话,试试这个
UPDATE tblGeoTable
SET CombinedEmail = COALESCE(f1,'')+';'+ COALESCE(f2,'')+';'+ COALESCE(f3,'')
编辑:
如果要添加而不是替换CombinedEmail列中的值,您可以执行
UPDATE tblGeoTable
SET CombinedEmail = COALESCE(CombinedEmail,'') + ';' + COALESCE(f1,'')+';'+ COALESCE(f2,'')+';'+ COALESCE(f3,'')