NEWS

[SQL SERVER] Hướng dẫn tránh trùng lắp dữ liệu trong lệnh Insert Into Select query

[SQL SERVER] Hướng dẫn tránh trùng lắp dữ liệu trong lệnh Insert Into Select query
Đăng bởi: Thảo Meo - Lượt xem: 15991 09:46:15, 28/08/2017C#   In bài viết

Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách tránh trùng lắp dữ liệu khi thêm dữ liệu vào bảng table trong sqlserver sử dụng lệnh INSERT INTO ... SELECT.

[SQLSERVER] How to avoid duplicates in INSERT INTO SELECT query in SQL Server?

Ở đây mình sẽ hướng dẫn các bạn 3 cách để tránh chèn dữ liệu trùng lắp: 

- Mình sẽ sử dụng các hàm NOT IN, NOT EXISTS và LEFT JOIN/ ISNULL

Cách 1: Sử dụng NOT EXISTS

INSERT INTO TABLE_2
  (id, name)
SELECT t1.id,
       t1.name
  FROM TABLE_1 t1
 WHERE NOT EXISTS(SELECT id
                    FROM TABLE_2 t2
                   WHERE t2.id = t1.id)

Cách 2: Sử dụng NOT IN

INSERT INTO TABLE_2
  (id, name)
SELECT t1.id,
       t1.name
  FROM TABLE_1 t1
 WHERE t1.id NOT IN (SELECT id
                       FROM TABLE_2)

Cách 3: Sử dụng LEFT JOIN/IS NULL

INSERT INTO TABLE_2
  (id, name)
   SELECT t1.id,
          t1.name
     FROM TABLE_1 t1
LEFT JOIN TABLE_2 t2 ON t2.id = t1.id
    WHERE t2.id IS NULL

Have Fun :)

Tags:

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[SQL SERVER] Hướng dẫn tránh trùng lắp dữ liệu trong lệnh Insert Into Select query
Đăng bởi: Thảo Meo - Lượt xem: 15991 09:46:15, 28/08/2017C#   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.