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

Làm cách nào để đếm các hàng từ hai bảng trong một truy vấn MySQL?

Đầu tiên chúng ta hãy tạo một bảng -

 mysql> tạo bảng DemoTable1 (Tên varchar (40)); Truy vấn OK, 0 hàng bị ảnh hưởng (0,81 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 ('Chris'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,48 giây) mysql> chèn vào các giá trị DemoTable1 ('Robert'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,17 giây) mysql> insert thành các giá trị DemoTable1 ('Mike'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,10 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 -

 + -------- + | Tên | + -------- + | Chris || Robert || Mike | + -------- + 3 hàng trong bộ (0,00 giây) 

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

 mysql> tạo bảng DemoTable2 (Score int); Truy vấn OK, 0 hàng bị ảnh hưởng (1.16 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ị DemoTable2 (86); Truy vấn OK, 1 hàng bị ảnh hưởng (0,22 giây) mysql> chèn vào các giá trị DemoTable2 (98); Truy vấn OK, 1 hàng bị ảnh hưởng (0,08 giây) mysql> chèn vào các giá trị DemoTable2 ( 75); Truy vấn OK, 1 hàng bị ảnh hưởng (0,14 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 DemoTable2; 

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

 + ------- + | Điểm | + ------- + | 86 || 98 || 75 | + ------- + 3 hàng trong bộ (0,00 giây) 

Sau đây là truy vấn để đếm các hàng từ hai bảng trong một truy vấn -

 mysql> select (select count (*) from DemoTable1) AS FirstTableCount, (select count (*) from DemoTable2) AS SecondTableCount from dual; 

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

 + ----------------- + ------------------ + | FirstTableCount | SecondTableCount | + ----------------- + ------------------ + | 3 | 3 | + ----------------- + ------------------ + 1 hàng trong bộ (0,00 giây)