我想将Table1中的多个现有列合并或插入到Table2中的一列中。我在表1中有客户的地址,但是它存储在单个实体中(街道地址,apt,城市,州等)。我想做的就是将所有这些实体合并为一列,作为每个客户的一个地址。我试过了:

insert into table2(newAddress) select street_address, city, state, country from table1


但是,我会出现此错误“列数与第1行的值数不匹配”。谢谢你的帮助

最佳答案

如果您尝试为单个字段插入值,则SQL期望您仅返回1个字段。就您而言,您将返回4个字段:street_address, city, state, country

我不确定最终的实现方式是什么,但是您可以尝试将4个字段合并为一个字段:

insert into table2(newAddress) select street_address + ' ' + city + ' ' + state + ' ' + country AS newAddress from table1

07-25 23:23
查看更多