Sql 将数据类型相同但列为';她的名字不一样
我有两张桌子 两个表具有相同的列,但列的名称不同 第一个表包含以下列:Sql 将数据类型相同但列为';她的名字不一样,sql,insert,insert-into,Sql,Insert,Insert Into,我有两张桌子 两个表具有相同的列,但列的名称不同 第一个表包含以下列: |ID_pk|Name 并且只有唯一的[ID](一对一) 第二个表包含以下列: |SerialNumber|FullLegalName|PassportNumber_fk| 并且在[SerialNumber]和[PassportNumber]之间具有一对多关系 [ID]和[SerialNumber]列没有匹配的值 我需要将第二个表中的所有[ID]和[Name]值插入到[SerialNumber]和[FullLegalNa
|ID_pk|Name
并且只有唯一的[ID](一对一)
第二个表包含以下列:
|SerialNumber|FullLegalName|PassportNumber_fk|
并且在[SerialNumber]和[PassportNumber]之间具有一对多关系
[ID]和[SerialNumber]列没有匹配的值
我需要将第二个表中的所有[ID]和[Name]值插入到[SerialNumber]和[FullLegalName]中,并使用它们各自的[PassportNumber]。尝试类似的方法
update tbl2
set tbl2.SerialNumber= tbl1.id,
tbl2.FullLegalName = tbl1.Name
from tbl1, tbl2
where tbl2.PassportNumber = 'something';
你可以这样做
但是第一个表和第二个表的列属性必须相等
update SecondTable
set SerialNumber = ft.ID,
FullLegalName = ft.Name
from FirstTable as ft
inner join SecondTable as st on ft.Id = st.PassportNumber_fk_ColumneName
inner join ThirdTable as tt on st.PassportNumber_fk_ColumneName = tt.PassportNumber_pk_ColumneName
问题是我在第一个表和第二个表中没有任何匹配值,所以我不确定这个连接应该做什么。我可以更好地使用不存在的地方吗?这个问题可以结束。我开发了另一个解决方案CTE。但也有困难。我将发布一个指向新问题的链接。