Computer >> Máy Tính >  >> Lập trình >> MySQL

Chèn bản ghi bằng MySQL SELECT?

Để chèn một bản ghi với select, hãy sử dụng câu lệnh INSERT INTO SELECT. Đầu tiên chúng ta hãy tạo một bảng -

 mysql> tạo bảng DemoTable1 -> (-> Id int, -> FirstName varchar (20) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (0,71 giây) 

Chèn một số bản ghi vào bảng bằng lệnh chèn -

 mysql> chèn vào các giá trị DemoTable1 (101, 'Chris'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,11 giây) mysql> chèn vào các giá trị DemoTable1 (NULL, 'Bob'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,19 giây ) mysql> chèn vào các giá trị DemoTable1 (NULL, NULL); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào các giá trị DemoTable1 (102, 'David'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,20 giây) 

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

 mysql> select * from DemoTable1; 

Điều này sẽ tạo ra kết quả sau -

 + ------ + ----------- + | Id | FirstName | + ------ + ----------- + | 101 | Chris || NULL | Bob || NULL | NULL || 102 | David | + ------ + ----------- + 4 hàng được thiết lập (0,00 giây) 

Đây là truy vấn để tạo bảng thứ hai.

 mysql> tạo bảng DemoTable2 -> (-> StudentId int, -> StudentName varchar (20) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (1.10 giây) 

Đây là truy vấn để chèn bản ghi bằng câu lệnh SELECT -

 mysql> insert vào DemoTable2 -> chọn Id, FirstName từ DemoTable1 -> trong đó Id IS NOT NULL và FirstName KHÔNG NULL; Truy vấn OK, 2 hàng bị ảnh hưởng (0,17 giây) Bản ghi:2 bản sao:0 Cảnh báo:0  

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

 mysql> select * from DemoTable2; 

Điều này sẽ tạo ra kết quả sau -

 + ----------- + ------------- + | StudentId | StudentName | + ----------- + ------------- + | 101 | Chris || 102 | David | + ----------- + ------------- + 2 hàng được thiết lập (0,00 giây)