MySQL INSERT SELECT

Hướng Dẫn Về MySQL INSERT SELECT

MySQL là một hệ quản trị cơ sở dữ liệu phổ biến, được sử dụng rộng rãi trong phát triển ứng dụng web và quản lý dữ liệu. Một trong những lệnh quan trọng trong MySQL là lệnh INSERT, cho phép thêm dữ liệu vào bảng. Trong bài viết này, chúng ta sẽ tìm hiểu về cách sử dụng câu lệnh INSERT SELECT để chèn dữ liệu từ một bảng này sang một bảng khác.

Khái Niệm

Câu lệnh INSERT SELECT cho phép bạn chèn dữ liệu vào một bảng bằng cách chọn dữ liệu từ một bảng khác. Điều này rất hữu ích khi bạn muốn sao chép dữ liệu hoặc di chuyển dữ liệu giữa các bảng mà không cần phải thực hiện nhiều thao tác.

Cú Pháp

Cú pháp cơ bản của lệnh INSERT SELECT như sau:

INSERT INTO ten_bang_moi (cot1, cot2, cot3, ...)
SELECT cot1, cot2, cot3, ...
FROM ten_bang_cu
WHERE dieu_kien;

Trong đó:

  • ten_bang_moi: Tên của bảng mà bạn muốn chèn dữ liệu vào.
  • cot1, cot2, cot3, ...: Tên các cột trong bảng mà bạn đang chèn dữ liệu.
  • ten_bang_cu: Tên của bảng mà bạn sẽ lấy dữ liệu từ đó.
  • dieu_kien: Điều kiện để lọc dữ liệu (tùy chọn).

Ví Dụ Cụ Thể

Ví Dụ 1: Chèn tất cả dữ liệu vào bảng mới

Giả sử bạn có hai bảng: khach_hangkhach_hang_moi. Bạn muốn chèn tất cả thông tin từ bảng khach_hang vào bảng khach_hang_moi.

INSERT INTO khach_hang_moi (id, ten, dia_chi)
SELECT id, ten, dia_chi
FROM khach_hang;

Ví Dụ 2: Chèn dữ liệu với điều kiện

Giả sử bạn chỉ muốn chèn những khách hàng có địa chỉ ở thành phố Hà Nội từ bảng khach_hang vào bảng khach_hang_moi.

INSERT INTO khach_hang_moi (id, ten, dia_chi)
SELECT id, ten, dia_chi
FROM khach_hang
WHERE dia_chi LIKE '%Hà Nội%';

Ví Dụ 3: Chèn dữ liệu và xử lý dữ liệu

Bạn cũng có thể thực hiện các phép toán trong câu lệnh SELECT. Ví dụ, chèn dữ liệu với một cột mới từ bảng khach_hang với một số toán tử.

INSERT INTO khach_hang_moi (id, ten, dia_chi, danh_gia)
SELECT id, ten, dia_chi, 5
FROM khach_hang
WHERE danh_gia > 3;

Kết Luận

Câu lệnh INSERT SELECT là một công cụ rất mạnh và linh hoạt trong MySQL giúp bạn có thể dễ dàng chèn dữ liệu từ bảng này sang bảng khác. Qua các ví dụ trên, hy vọng bạn đã hiểu rõ cách sử dụng lệnh này và có thể áp dụng nó vào công việc của mình. Chúc bạn học tốt MySQL!