Sql server MS SQL将A列与B列合并,将A的值替换为B,除非';s空
我试着在谷歌上搜索这个,但我不太确定如何进行搜索。我搜索合并、合并、替换。欢迎提出任何其他建议或建议。我发现的结果并没有替换A列的字段,而是添加了两个值/字符串,比如Sql server MS SQL将A列与B列合并,将A的值替换为B,除非';s空,sql-server,Sql Server,我试着在谷歌上搜索这个,但我不太确定如何进行搜索。我搜索合并、合并、替换。欢迎提出任何其他建议或建议。我发现的结果并没有替换A列的字段,而是添加了两个值/字符串,比如colA字段“John”+“+”Smith“。这不是我要找的。我发现其他人有同样的问题,但没有正确的答案 这不是我想要的,因为它只是添加值,而不是替换值。(不确定它在哪个版本的SQL中工作) 有这个: table1 id row text row1 1 1 AAA row2 1 2
colA字段“John”+“+”Smith“
。这不是我要找的。我发现其他人有同样的问题,但没有正确的答案
这不是我想要的,因为它只是添加值,而不是替换值。(不确定它在哪个版本的SQL中工作)
有这个:
table1
id row text
row1 1 1 AAA
row2 1 2 BBB
row3 1 3 CCC
row4 1 4 DDD
row5 2 1 aaa
row6 2 2 bbb
table2
id row text
row1 1 1 AAA
row2 1 3 CCCCC
row3 2 1 aaa
row4 2 2 bbbbb
Display
id row text
row1 1 1 AAA
row2 1 2 BBB
row3 1 3 CCCCC
row4 1 4 DDD
row5 2 1 aaa
row6 2 2 bbbbb
表1
id行文本
第1排AAA
第2排BBB
第3排1 3 CCC
第4行第1 4 DDD行
第5排2 1 aaa
第6排2 bbb
表2
id行文本
第1排AAA
第2 1 3行CCCCC
第3排2排1 aaa
第4排2 BBB
所需结果:
table1
id row text
row1 1 1 AAA
row2 1 2 BBB
row3 1 3 CCC
row4 1 4 DDD
row5 2 1 aaa
row6 2 2 bbb
table2
id row text
row1 1 1 AAA
row2 1 3 CCCCC
row3 2 1 aaa
row4 2 2 bbbbb
Display
id row text
row1 1 1 AAA
row2 1 2 BBB
row3 1 3 CCCCC
row4 1 4 DDD
row5 2 1 aaa
row6 2 2 bbbbb
展示
id行文本
第1排AAA
第2排BBB
第3行1 3 CCCCC
第4行第1 4 DDD行
第5排2 1 aaa
第6排2 BBB
我不想修改原始记录和表格设计
先谢谢你
SELECT table1.id
, table1.row
, Coalesce(table2.text, table1.text) As text
FROM table1
LEFT
JOIN table2
ON table2.id = table1.id
AND table2.row = table1.row
该函数至少接受两个参数,并从这些值返回第一个非空值
还要注意,我们正在执行一个外部联接,这样我们就有了表1
中的所有值,并且在可能的情况下,我们可以与表2
中的值进行匹配。如果要将其更改为选择*