Sử Dụng JOIN Trong MySQL
Có thể bạn quan tâm
Tới chương này, chúng ta mới chỉ lấy dữ liệu từ một bảng tại một thời điểm. Điều này là khá tốt cho những tác vụ đơn giản, nhưng trong thực tiễn khi sử dụng MySQL, chúng ta thường cần lấy dữ liệu từ nhiều bảng trong một truy vấn đơn.
Bạn có thể sử dụng nhiều bảng trong truy vấn SQL đơn. Hoạt động Join trong MySQL có thể được hiểu như là việc ghim hai hoặc nhiều bảng vào trong một bảng đơn.
Bạn có thể sử dụng JOIN trong các lệnh SELECT, UPDATE và DELETE để kết hợp các bảng MySQL. Chúng ta sẽ xem một ví dụ về LEFT JOIN cũng như sự khác nhau giữa các JOIN trong MySQL.
Sử dụng JOIN trong MySQL
Trước khi bắt đầu ví dụ, chúng ta cần tạo thêm một bảng hocphik60 trong cơ sở dữ liệu sinhvien. Bây giờ chúng ta có hai bảng như sau:
Bảng sinhvienk60 có dữ liệu:
Tạo bảng hocphik60 và chèn dữ liệu vào bảng.
//Lua chon co so du lieu USE sinhvien; //Tao bang CREATE TABLE hocphik60 ( ten VARCHAR(255) NOT NULL, hocphi INT NOT NULL ); //Chen du lieu vao bang INSERT INTO hocphik60 (ten, hocphi) VALUES ('Nam', 4000000); INSERT INTO hocphik60 (ten, hocphi) VALUES ('Thanh', 3500000); INSERT INTO hocphik60 (ten, hocphi) VALUES ('Cao', 4500000); INSERT INTO hocphik60 (ten, hocphi) VALUES ('Huong', 3000000);Sau đó, bạn sử dụng lệnh SELECT * FROM hocphik60 ta sẽ có bảng như sau:
Bây giờ, chúng ta có thể viết một truy vấn SQL để kết hợp hai bảng trên. Truy vấn này sẽ lựa chọn tất cả ten từ bảng sinhvienk60 và sẽ lựa chọn số hocphi tương ứng từ bảng hocphik60.
SELECT a.mssv, a.ten, b.hocphi FROM sinhvienk60 a, hocphik60 b WHERE a.ten = b.ten;Kết quả là:
Sử dụng JOIN trong PHP Script
Bạn có thể sử dụng bất kỳ truy vấn SQL nào ở trên trong PHP Script. Bạn chỉ cần truyền truy vấn SQL vào trong hàm PHP là mysql_query() và sau đó bạn sẽ lấy các kết quả theo cách thức thông thường.
Dưới đây là ví dụ minh họa sự sử dụng JOIN trong PHP script:
<?php $dbhost = 'localhost:3306'; $dbuser = 'root'; $dbpass = '123456'; $conn = mysql_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('Khong the ket noi: ' . mysql_error()); } $sql = 'SELECT a.mssv, a.ten, b.hocphi FROM sinhvienk60 a, hocphik60 b WHERE a.ten = b.ten'; mysql_select_db('sinhvien'); $retval = mysql_query( $sql, $conn ); if(! $retval ) { die('Khong the lay du lieu: ' . mysql_error()); } while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) { echo "Ten:{$row['ten']} <br> ". "Hoc Phi: {$row['hocphi']} <br> ". "MSSV : {$row['mssv']} <br> ". "--------------------------------<br>"; } echo "Lay du lieu thanh cong\n"; mysql_close($conn); ?>RIGHT JOIN trong MySQL
RIGHT JOIN trong SQL trả về tất cả hàng từ bảng bên phải, ngay cả khi không có so khớp nào trong bảng bên trái. Nghĩa là nếu mệnh đề ON so khớp với 0 bản ghi trong bảng bên trái, thì RIGHT JOIN sẽ vẫn trả về một hàng trong kết quả, nhưng với NULL trong mỗi cột từ bảng bên trái.
Bạn thử ví dụ minh họa RIGHT JOIN với hai bảng trên như sau:
SELECT a.mssv, a.ten, b.hocphi FROM sinhvienk60 a RIGHT JOIN hocphik60 b ON a.ten = b.ten;Kết quả là:
Bạn cần làm nhiều bài thực hành để làm quen với các JOIN trong MySQL. Đây là một khái niệm khá phức tạp trong MySQL/SQL và bạn sẽ hiểu rõ hơn trong khi thực hành các ví dụ thực tế.
Hoặc bạn có thể tham khảo cách sử dụng JOIN trong SQL được trình bày trong loạt bài hướng dẫn về SQL của chúng tôi. Bạn vào trang: Sử dụng JOIN trong SQL
👉 Giải bài nhanh với AI Hay:Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:
Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.
Các bài học MySQL phổ biến khác tại VietJack:
- Tạo Database
- Xóa Database
- Chọn cơ sở dữ liệu
- Kiểu dữ liệu
- Tạo bảng
- Xóa bảng
160 bài học ngữ pháp tiếng Anh hay nhất
155 bài học Java tiếng Việt hay nhất
100 bài học Android tiếng Việt hay nhất
247 bài học CSS tiếng Việt hay nhất
197 thẻ HTML cơ bản
297 bài học PHP
101 bài học C++ hay nhất
97 bài tập C++ có giải hay nhất
208 bài học Javascript có giải hay nhất
Từ khóa » Các Loại Join Trong Mysql
-
Câu Lệnh SQL Join: Các Loại Join Trong SQL - Viblo
-
CÁC KIỂU CỦA LỆNH JOIN TRONG MySQL: INNER, OUTER, LEFT ...
-
INNER JOIN Trong MySQL - Freetuts
-
Truy Vấn Nhiều Bảng Với JOIN Trong SQL
-
Các Loại Join Trong SQL | GiangTester Blog
-
Mệnh đề JOIN Và Các Loại JOINS Trong SQL - BAC
-
Ghép Bảng Bằng Mệnh đề INNER JOIN Trong MySQL - Web Cơ Bản
-
Câu Lệnh SQL Join: Các Loại Join Trong SQL - Sen Tây Hồ
-
Chi Tiết Bài Học 02. JOIN Trong SQL - Vimentor
-
Câu Lệnh Join Trong MySQL Với Python - Góc Học IT
-
Mệnh đề JOIN Trong SQL - Học Sql Cơ Bản đến Nâng Cao - VietTuts
-
Các Loại Join (Inner Join, Left Outer Join, Right Outer Join, Full Join ...
-
Câu Lệnh UPDATE JOIN Trong MySQL - Comdy
-
Xu Hướng 6/2022 # Các Kiểu Của Lệnh Join Trong Mysql: Inner ...