Minh họa bằng ví dụ sao chép dữ liệu từ bảng này sang bảng khác. Dùng dữ liệu từ bảng cars sao chép sang copy_cars.
mysql> CREATE TABLE copy_cars LIKE cars; Query OK, 0 rows affected (0.86 sec) mysql> SELECT * from copy_cars; Empty set (0.08 sec)
Truy vấn dùng subquery chèn dữ liệu:
mysql> INSERT INTO Copy_cars Select * from Cars; Query OK, 8 rows affected (0.07 sec) mysql> SELECT * from copy_cars; +------+--------------+---------+ | ID | Name | Price | +------+--------------+---------+ | 1 | Nexa | 750000 | | 2 | Maruti Swift | 450000 | | 3 | BMW | 4450000 | | 4 | VOLVO | 2250000 | | 5 | Alto | 250000 | | 6 | Skoda | 1250000 | | 7 | Toyota | 2400000 | | 8 | Ford | 1100000 | +------+--------------+---------+ 8 rows in set (0.00 sec)
Giải thích:
CREATE TABLE ... LIKEtạo bảng mới với cấu trúc y hệt bảng cũ (không copy dữ liệu)INSERT INTO ... SELECT * FROMchèn tất cả hàng từ bảng nguồn- Subquery ở đây là
SELECT * FROM Carstrả về tập kết quả để INSERT