Ajouter une nouvelle colonne avec des données d'une jointure

Quelle est la meilleure approche pour append une colonne à une table existante avec des valeurs d'une jointure … Par exemple:

Si je joins le tableau A au tableau B …

Select A.Column1, A.Column2, B.Column1, B.Column2, B.Column3 FROM A INNER JOIN B ON A.Column1 = B.Column2 

Fondamentalement, je veux juste copyr la colonne qui existe dans la table B sur le tableau A, comment puis-je append une nouvelle A.Column3 à la table A pour correspondre à B.Column3 basé sur la jointure?

Essaye ça:

 alter table A add column3 datatype update A set column3 = B.column3 from A inner join B on A.Column1 = B.Column2 

Notez que ce n'est probablement pas la méthode la plus efficace

 alter table A add column3 [yourdatatype]; update A set column3 = (select column3 from B where A.Column1 = B.Column2) where exists (select column3 from B where A.Column1 = B.Column2) 

Utilisez d'abord une command alter table pour append la nouvelle colonne.

Afterwords utilise la command update pour mettre les valeurs de B dans la colonne créée en A.

Tu peux le faire:

 alter A add column3 datatype; update A inner join (select column2 ,column3, count(*) as cnt from B group by column2) b on A.column1 = b.column2 set A.column3 = b.column3; 

Vous pouvez créer une nouvelle table en utilisant l'instruction INSERT:

 INSERT INTO NEW_A SELECT A.*, B.Column3 FROM A INNER JOIN B ON A.Column1 = B.Column2