Tham gia nhiều bảng trong sql php
OrderIDCustomerIDEemployeeIDOrderDateShipperID10308271996-09-183103093731996-09-191103107781996-09-202 Show
Và một lựa chọn từ bảng "Khách hàng" ID khách hàng Tên khách hàng Tên liên hệĐịa chỉThành phốMã bưu chínhQuốc gia1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Đức2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222Mexico D. F. 05021Mexico3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D. F. 05023Mexico SQL INNER THAM GIA Ví dụCâu lệnh SQL sau chọn tất cả các đơn hàng có thông tin khách hàng Thí dụCHỌN Đơn đặt hàng. OrderID, khách hàng. Tên khách hàng Ghi chú. Từ khóa 5 chọn tất cả các hàng từ cả hai bảng miễn là có sự trùng khớp giữa các cột. Nếu có các bản ghi trong bảng "Đơn hàng" không khớp với "Khách hàng", các đơn hàng này sẽ không được hiển thị THAM GIA Ba bànCâu lệnh SQL sau chọn tất cả các đơn đặt hàng có thông tin khách hàng và người giao hàng Thí dụCHỌN Đơn đặt hàng. OrderID, khách hàng. Tên khách hàng, Người gửi hàng. ShipperName Kiểm tra bản thân với các bài tậpTập thể dụcChọn mệnh đề 6 đúng để chọn tất cả các bản ghi từ hai bảng có sự trùng khớp trong cả hai bảng Bản tóm tắt. trong hướng dẫn này, bạn sẽ học cách sử dụng mệnh đề MySQL 5 để chọn dữ liệu từ nhiều bảng dựa trên các điều kiện tham gia Giới thiệu về mệnh đề MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline;Code language: SQL (Structured Query Language) (sql)55 khớp từng hàng trong một bảng với mọi hàng trong các bảng khác và cho phép bạn truy vấn các hàng chứa các cột từ cả hai bảng 5 là một mệnh đề tùy chọn của câu lệnh 3. Nó xuất hiện ngay sau mệnh đề 4. Đây là cú pháp của mệnh đề 5
Trong cú pháp này
Giả sử bạn muốn nối hai bảng 7 và 9 Câu lệnh sau minh họa cách nối hai bảng 7 và 9 bằng cách sử dụng mệnh đề 5
Mệnh đề 5 so sánh từng hàng trong bảng 7 với mọi hàng trong bảng 9 dựa trên điều kiện nối Nếu các hàng từ cả hai bảng làm cho điều kiện nối được đánh giá là 52, thì 5 sẽ tạo một hàng mới có các cột chứa tất cả các cột của các hàng từ các bảng và bao gồm hàng mới này trong tập kết quả. Mặt khác, 5 chỉ cần bỏ qua các hàng Trong trường hợp không có hàng nào giữa các bảng làm cho điều kiện tham gia ước tính thành 52, thì 5 trả về một tập kết quả trống. Logic này cũng được áp dụng khi bạn tham gia nhiều hơn 2 bảng Biểu đồ Venn sau đây minh họa cách thức hoạt động của mệnh đề 5 MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline;Code language: SQL (Structured Query Language) (sql)5 ví dụHãy xem các bảng 59 và 80 trong cơ sở dữ liệu mẫu Trong sơ đồ này, bảng 59 có cột 82 tham chiếu đến cột 83 của bảng 80. Cột 82 trong bảng 59 được gọi là cột khóa ngoại Thông thường, bạn tham gia các bảng có mối quan hệ khóa ngoại như bảng 80 và 59 Giả sử bạn muốn lấy
Để thực hiện việc này, bạn cần chọn dữ liệu từ cả hai bảng bằng cách khớp các hàng dựa trên các giá trị trong cột 83 bằng cách sử dụng mệnh đề 5 như sau
Dùng thử Vì các cột đã nối của cả hai bảng có cùng tên 83 nên bạn có thể sử dụng cú pháp 87 5 Truy vấn trả về cùng một tập kết quả. Tuy nhiên, cú pháp 87 ngắn hơn và rõ ràng hơn nhiều MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline;Code language: SQL (Structured Query Language) (sql)5 với ví dụ về mệnh đề SELECT select_list FROM t1 INNER JOIN t2 ON join_condition;Code language: SQL (Structured Query Language) (sql)80Xem các bảng 81 và 82 sau đây Truy vấn này trả về số đơn hàng, trạng thái đơn hàng và tổng doanh số từ các bảng 81 và 82 bằng cách sử dụng mệnh đề 5 với mệnh đề 86 8 Dùng thử Tương tự, truy vấn sau đây sử dụng cú pháp 5 với cú pháp 87 8 MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline; (adsbygoogle = window.adsbygoogle || []).push({}); Code language: SQL (Structured Query Language) (sql)5 – tham gia ba bảng ví dụXem các bảng 59, 81 và 82 sau đây Truy vấn này sử dụng hai mệnh đề 5 để nối ba bảng. 81, 82 và 59 8 Hình ảnh này cho thấy đầu ra một phần MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline;Code language: SQL (Structured Query Language) (sql)5 – tham gia bốn bảng ví dụXem các bảng sau 81, 82, 60 và 59 Ví dụ này sử dụng ba mệnh đề 5 để truy vấn dữ liệu từ bốn bảng trên 8 MySQL SELECT productCode, productName, textDescription FROM products t1 INNER JOIN productlines t2 ON t1.productline = t2.productline;Code language: SQL (Structured Query Language) (sql)5 sử dụng toán tử khácCho đến giờ, bạn đã thấy rằng điều kiện nối đã sử dụng toán tử bằng (=) cho các hàng phù hợp Ngoài toán tử bằng (=), bạn có thể sử dụng các toán tử khác như lớn hơn ( 64), nhỏ hơn ( 65) và toán tử không bằng nhau ( 66) để tạo thành điều kiện nối Truy vấn sau sử dụng phép nối nhỏ hơn ( 65) để tìm giá bán của sản phẩm có mã là 68 thấp hơn giá bán lẻ đề xuất của nhà sản xuất (MSRP) cho sản phẩm đó 6 Trong hướng dẫn này, bạn đã học cách sử dụng MySQL 5 để truy vấn dữ liệu từ nhiều bảng. |