Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Sisipkan Ke... Gabung... Pilih (SQL Server)

Caranya adalah dengan mengisi tabel dengan MERGE pernyataan alih-alih INSERT...SELECT . Itu memungkinkan Anda untuk menggunakan nilai dari data yang dimasukkan dan sumber dalam klausa keluaran:

MERGE INTO Table3 USING
(
    SELECT null as col2, 
           110 as col3, 
           Table1.ID as col4, 
           Table2.Column2 as col5,
           Table2.Id as col6
    FROM Table1
    JOIN Table1Table2Link on Table1.ID=Table1Table2Link.Column1
    JOIN Table2 on Table1Table2Link.Column2=Table2.ID
) AS s ON 1 = 0 -- Always not matched
WHEN NOT MATCHED THEN
INSERT (Column2, Column3, Column4, Column5)
VALUES (s.col2, s.col3, s.col4, s.col5)
OUTPUT Inserted.ID, s.col6
INTO @MyTableVar (insertedId, Table2Id); 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana FOR XML PATH('') bekerja saat menggabungkan baris

  2. Database yang dapat menangani>500 juta baris

  3. 4 Cara untuk Memeriksa Baris Duplikat di SQL Server

  4. Cara menyesuaikan kinerja SQL Server, Azure SQL Database, dan Amazon RDS

  5. SQL Server 2016 :Dampak Kinerja Selalu Terenkripsi