Chuyển đến nội dung chính

Hướng dẫn Insert Into SQL

Câu lệnh "INSERT INTO" của SQL có thể được dùng để thêm các hàng dữ liệu vào một bảng trong cơ sở dữ liệu.
Đã cập nhật 5 thg 10, 2026  · 3 phút đọc

Khám phá cùng AI

ChatGPTClaudePerplexity

Cú pháp

Dưới đây là cách dùng thông thường của "INSERT INTO" - khi bạn chèn giá trị thủ công. Câu lệnh theo sau là tên bảng và danh sách cột tùy chọn cần được điền dữ liệu. Tiếp theo là từ khóa "VALUES" và các giá trị thực tế bạn muốn chèn.

INSERT INTO table_name (column_a, column_b)
VALUES ("value_a", "value_b");

Chèn bản ghi DISTINCT vào các bảng mới

Để sao chép dữ liệu từ một bảng hiện có sang bảng mới, bạn có thể dùng mẫu "INSERT INTO SELECT DISTINCT". Sau "INSERT INTO", bạn chỉ định tên bảng đích - trong ví dụ dưới đây là organizations.

Sau đó, bạn chọn các cột cần sao chép từ bảng nguồn – trong trường hợp này là unviversity_professors. Bạn dùng từ khóa "DISTINCT" để chỉ sao chép những tổ chức khác nhau.

INSERT INTO organizations
SELECT DISTINCT organization,
    organization_sector
FROM university_professors;
Output: INSERT 0 1287

Kết quả trên cho thấy chỉ có 1287 bản ghi được chèn vào bảng "organizations".

Ngược lại, nếu bạn dùng "INSERT INTO SELECT" mà không có từ khóa "DISTINCT", các bản ghi trùng lặp cũng sẽ được sao chép.

INSERT INTO organizations
SELECT organization,
    organization_sector
FROM university_professors;
Output: INSERT 0 1377

Di chuyển dữ liệu sang bảng mới

Hãy di chuyển dữ liệu sang các bảng mới. Bạn sẽ dùng mẫu sau:

INSERT INTO ...
SELECT DISTINCT ...
FROM ...;

Có thể tách thành hai phần:

Phần đầu:

SELECT DISTINCT column_name1, column_name2, ...
FROM table_a;

Phần này chọn tất cả các giá trị khác nhau trong bảng table_a – không có gì mới với bạn.

-- Insert unique professors into the new table
INSERT INTO professors
SELECT DISTINCT firstname, lastname, university_shortname
FROM university_professors;

-- Doublecheck the contents of professors
SELECT *
FROM professors;

Phần thứ hai:

INSERT INTO table_b ...;

Lấy phần này và nối vào phần đầu, để chèn tất cả các hàng khác nhau từ table_a vào table_b.

Một lưu ý cuối: Điều quan trọng là bạn chạy toàn bộ đoạn mã cùng lúc sau khi đã điền đầy đủ các phần còn trống.

-- Insert unique affiliations into the new table
INSERT INTO affiliations
SELECT DISTINCT firstname, lastname, function, organization
FROM university_professors;

-- Doublecheck the contents of affiliations
SELECT *
FROM affiliations;

Tự bạn thử nhé.

Để tìm hiểu thêm về cơ sở dữ liệu quan hệ trong SQL, vui lòng xem video từ khóa học Giới thiệu về Cơ sở dữ liệu quan hệ trong SQL của chúng tôi.

Nội dung này được trích từ khóa học Giới thiệu về Cơ sở dữ liệu quan hệ trong SQL của DataCamp do Timo Grossenbacher biên soạn.

Chủ đề
SQL

Nhiều khóa học hơn về cơ sở dữ liệu và SQL

Khóa học

Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

4 giờ
201.3K
Học cách tạo ra một trong những phương pháp hiệu quả nhất để lưu trữ dữ liệu - cơ sở dữ liệu quan hệ!
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow
Liên quan

blog

Claude Opus 4.6: Tính năng, Điểm chuẩn, Bài kiểm tra thực hành và hơn thế nữa

Mô hình mới nhất của Anthropic dẫn đầu ở mã hóa tác tử và lập luận phức tạp. Thêm vào đó, nó có cửa sổ ngữ cảnh 1M.
Matt Crabtree's photo

Matt Crabtree

10 phút

Xem ThêmXem Thêm