Sélection de la valeur distincte de table1 et table2, puis insertion de ceux dans table3

Voici la déclaration que j'utilise.

insert into Course_Data (Branch, CC, C_Title, Sem, Credits) values (select distinct from (select * from Course_Data) union (select * from TEMP1) a order by a.CC) 

J'ai rencontré avec erreur:

Syntaxe incorrecte près du mot-key 'select'. Syntaxe incorrecte près de 'a'.

Course_ Data:

 Branch | CC | C_Title | Sem | Credits CS sub1 Networks 3rd 4:1:1=6 

Temp:

  Branch | CC | C_Title | Sem | Credits MCA sub1 Compuuters 3rd 4:1:1=6 CS sub1 Networks 3rd 4:1:1=6 

Ce sont 2 tables, donc après avoir exécuté la requête, je dois get des données de twig de MCA dans la table de Course_Data sans duplication des données de twig de CS. ie Course_Data:

 Branch | CC | C_Title | Sem | Credits CS sub1 Networks 3rd 4:1:1=6 MCA sub1 Compuuters 3rd 4:1:1=6 

Une insertion avec une SELECT n'a pas besoin du mot key VALUES . Voir synthax MSDN . Donc, vous interrogez sera

 INSERT INTO Dist_Data (Branch,CC,C_Title,Sem,Credits) select * from ( select * from Course_Data union select * from TEMP1 )a order by a.CC 

Soyez prudent lorsque vous utilisez * pour SELECT-INSERT car si le nombre de colonnes dans la table source et la table de destination ne correspondent pas, une erreur sera générée. Il est donc préférable d'utiliser comme ci-dessous

 INSERT INTO Dist_Data (Branch,CC,C_Title,Sem,Credits) select * from ( select COL1,COL2,COL3,COL4,COL5 from Course_Data union select COL1,COL2,COL3,COL4,COL5 from TEMP1 )a order by a.COLUMNNAME 

MODIFIER :

Conformément à votre nouvelle exigence, vous pouvez utiliser la clause / opérateur Course_Data pour éviter l'insertion de données en double dans votre table Course_Data . L'ordre des colonnes doit être identique lors de l'utilisation de EXCEPT . Plus sur EXCEPT ici .

  • Cliquez ici pour voir le fonctionnement de EXCEPT

QUESTION

 INSERT INTO Course_Data (Branch,CC,C_Title,Sem,Credits) select * from ( SELECT Branch,CC,C_Title,Sem,Credits FROM TEMP1 EXCEPT SELECT Branch,CC,C_Title,Sem,Credits FROM Course_Data )a order by a.COLUMNNAME 
  • Cliquez ici pour voir le résultat