Lệnh INSERT trong SQL

Trong các bài học SQL trước bạn đã được tìm hiểu về lệnh liên quan đến cơ sở dữ liệu, bảng dữ liệu trong SQL, như lệnh tạo bảng, lệnh xóa bảng. Bắt đầu từ bài này chúng ta sẽ đi vào phần truy vấn trong SQL, mở màn bằng lệnh truy vấn INSERT INTO.

Lệnh INSERT INTO trong SQL được dùng để thêm một hàng dữ liệu mới vào bảng trong cơ sở dữ liệu.

Cú pháp của lệnh INSERT INTO:

Lệnh INSERT INTO có 2 cú pháp cơ bản, chúng ta sẽ cùng tìm hiểu cả 2 cú pháp trong bài này.

Lệnh INSERT INTO, cú pháp 1:

INSERT INTO TEN_BANG (cot1, cot2, cot3,...cotN)
 VALUES (gia_tri1, gia_tri2, gia_tri3,...gia_triN);

Ở đây, cot1, cot2, cot3,… cotN là tên các cột trong bảng mà bạn muốn chèn thêm dữ liệu. gia_tri1, gia_tri2, gia_tri3,…gia_triN là giá trị cần thêm vào tương ứng với các cột.

Nếu bạn muốn thêm giá trị vào tất cả các cột trong bảng thì có thể sử dụng lệnh INSERT INTO với cú pháp 2 dưới đây:

INSERT INTO TEN_BANG
 VALUES (gia_tri1, gia_tri2, gia_tri3,...gia_triN);

Bạn nhấn thấy sự khác biệt không? Ở cú pháp 2, bạn không cần liệt kê tên các cột trong bảng, chỉ cần đảm bảo rằng thứ tự các giá trị bạn muốn thêm vào đúng với thứ tự của các cột trong bảng là được.

Ví dụ về lệnh INSERT INTO:

Lệnh dưới đây sẽ tạo 6 bản ghi cho bảng NHANVIEN

INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (1, 'Thanh', 24, 'Haiphong', 2000.00 ); 
 INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (2, 'Loan', 26, 'Hanoi', 1500.00 ); 
 INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (3, 'Nga', 24, 'Hanam', 2000.00 ); 
 INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (4, 'Manh', 29, 'Hue', 6500.00 ); 
 INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (5, 'Huy', 28, 'Hatinh', 8500.00 ); 
 INSERT INTO NHANVIEN (ID,TEN,TUOI,DIACHI,LUONG) VALUES (6, 'Cao', 23, 'HCM, 4500.00 );

Có thể sử dụng cú pháp 2 để thêm bản ghi thứ 7 cho bảng NHANVIEN như sau:

INSERT INTO NHANVIEN
 VALUES (7, 'LAM', 29, 'Hanoi, 15000.00 );

Sau khi thực hiện tất cả các lệnh trên, ta sẽ có bảng NHANVIEN như sau:

+----+----------+-----+-----------+---------+ 
 | ID |   TEN    | TUOI|  DIACHI   |  LUONG  |
 +----+----------+-----+-----------+---------+
 | 1  |  Thanh   | 24  | Haiphong  | 2000.00 |
 | 2  |  Loan    | 26  | Hanoi     | 1500.00 |
 | 3  |  Nga     | 24  | Hanam     | 2000.00 |
 | 4  |  Mnh    | 29  | Hue       | 6500.00 |
 | 5  |  Huy     | 28  | Hatinh    | 8500.00 |
 | 6  |  Cao     | 23  | HCM       | 4500.00 |
 | 7  |  Lam     | 29  | Hanoi     | 15000.00|
 +----+----------+-----+-----------+---------+

Thêm một bảng vào bảng có sẵn:

Trong SQL, bạn có thể thêm bảng B vào bảng A bằng cách sử dụng lệnh SELECT trên bảng B, cụ thể như sau:

INSERT INTO TEN_BANG_A [(cot1, cot2, ... cot)]
 SELECT cot1, cot2, ...cotN
 FROM TEN_BANG_B
 [WHERE DIEU_KIEN];

Trong lệnh trên bạn sẽ thêm các cột từ bảng B để thêm vào bảng A, những phần để trong dấu [] là có thể có hoặc không.