2009-07-01 10 views
2

J'ai les tables A et B, les mêmes schémas.Insérer une partie d'une table dans une autre table

Je veux insérer certaines lignes du tableau A dans le tableau B. Par exemple, insérer dans le tableau B toutes les lignes de la table A avec la colonne « abc »> 10.

ne pouvait pas comprendre comment le faire

Répondre

5

Quelque chose comme ça

INSERT INTO B (supplier_id, supplier_name) 
SELECT supplier_id, supplier_name FROM A 
WHERE abc > 10; 

Donne un sens?

+0

La clause where a besoin des guillemets simples retirées du nom de la colonne. En ce moment, vous comparez la chaîne 'abc' pour voir si elle est supérieure à 10. –

+0

@Shannon: Correction, merci! –

1

Vous pouvez utiliser la notation suivante:

BEGIN TRAN 
INSERT INTO ExistingTable (Col1, Col2...) 
SELECT Something1, Something2... FROM Table1 WHERE ... 
--ROLLBACK/COMMIT 
1

À première vue, je dirais quelque chose comme:

Insert Into B 
(Select * from A 
Where abc > 10) 
Questions connexes