Tham gia SQL trong PHP là gì?
SQL THAM GIA được sử dụng để lấy dữ liệu từ nhiều bảng. SQL THAM GIA được thực hiện bất cứ khi nào hai hoặc nhiều bảng được liệt kê trong câu lệnh SQL Show Có 4 kiểu nối SQL khác nhau
Vì vậy, hãy thảo luận về cú pháp SQL THAM GIA, xem các minh họa trực quan về SQL THAM GIA và khám phá một số ví dụ DDL/DML cho các ví dụNếu bạn muốn làm theo hướng dẫn này, hãy lấy DDL để tạo bảng và DML để điền dữ liệu. Sau đó thử các ví dụ trong cơ sở dữ liệu của riêng bạn Nhận DDL/DML SQL INNER THAM GIA (tham gia đơn giản)Rất có thể, bạn đã viết một câu lệnh SQL sử dụng SQL INNER JOIN. Đây là kiểu nối SQL phổ biến nhất. SQL INNER THAM GIA trả về tất cả các hàng từ nhiều bảng khi điều kiện tham gia được đáp ứng cú phápCú pháp của INNER JOIN trong SQL là SELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column; Minh họa trực quanTrong sơ đồ trực quan này, SQL INNER JOIN trả về vùng được tô bóng SQL INNER JOIN sẽ trả về các bản ghi nơi bảng1 và bảng2 giao nhau Ví dụHãy xem một ví dụ về cách sử dụng INNER JOIN trong một truy vấn Trong ví dụ này, chúng tôi có một bảng được gọi là khách hàng với dữ liệu sau khách hàng_idlast_namefirst_namefavorite_website4000JacksonJoetechonthenet. com5000SmithJanedigminecraft. com6000FergusonSamanthabighoạt động. com7000ReynoldsAllencheckyourmath. com8000AndersonPaigeNULL9000JohnsonDerektechonthenet. com Và một bảng gọi là đơn đặt hàng với dữ liệu sau order_idcustomer_idorder_date170002016/04/18250002016/04/18380002016/04/19440002016/04/205NULL2016/05/01 Nhập câu lệnh SQL sau Thử điSELECT customers.customer_id, orders.order_id, orders.order_date FROM customers INNER JOIN orders ON customers.customer_id = orders.customer_id ORDER BY customers.customer_id; Sẽ có 4 bản ghi được chọn. Đây là những kết quả mà bạn sẽ thấy customer_idorder_idorder_date400042016/04/20500022016/04/18700012016/04/18800032016/04/19 Ví dụ này sẽ trả về tất cả các hàng từ bảng khách hàng và đơn hàng có giá trị customer_id phù hợp trong cả bảng khách hàng và đơn hàng Các hàng mà customer_id bằng 6000 và 9000 trong bảng khách hàng sẽ bị bỏ qua vì chúng không tồn tại trong cả hai bảng. Hàng có order_id là 5 trong bảng đơn hàng sẽ bị bỏ qua, vì khách hàng_id của NULL không tồn tại trong bảng khách hàng Cú pháp cũLưu ý cuối cùng, điều đáng nói là ví dụ INNER JOIN ở trên có thể được viết lại bằng cách sử dụng cú pháp ẩn cũ hơn như sau (nhưng chúng tôi vẫn khuyên bạn nên sử dụng cú pháp từ khóa INNER JOIN) Thử điSELECT customers.customer_id, orders.order_id, orders.order_date FROM customers, orders WHERE customers.customer_id = orders.customer_id ORDER BY customers.customer_id; SQL TRÁI NGOÀI THAM GIAMột kiểu nối khác được gọi là LEFT OUTER JOIN. Loại phép nối này trả về tất cả các hàng từ bảng bên TRÁI được chỉ định trong điều kiện BẬT và chỉ những hàng từ bảng khác nơi các trường được nối bằng nhau (đáp ứng điều kiện nối) cú phápCú pháp của LEFT OUTER JOIN trong SQL là SELECT columns FROM table1 LEFT [OUTER] JOIN table2 ON table1.column = table2.column; Trong một số cơ sở dữ liệu, từ khóa OUTER được bỏ qua và được viết đơn giản là LEFT JOIN Minh họa trực quanTrong sơ đồ trực quan này, SQL LEFT OUTER JOIN trả về vùng được tô bóng SQL LEFT OUTER JOIN sẽ trả về tất cả các bản ghi từ bảng1 và chỉ những bản ghi từ bảng2 giao với bảng1 Ví dụBây giờ hãy xem một ví dụ cho thấy cách sử dụng LEFT OUTER JOIN trong câu lệnh SELECT Sử dụng cùng một bảng khách hàng như ví dụ trước khách hàng_idlast_namefirst_namefavorite_website4000JacksonJoetechonthenet. com5000SmithJanedigminecraft. com6000FergusonSamanthabighoạt động. com7000ReynoldsAllencheckyourmath. com8000AndersonPaigeNULL9000JohnsonDerektechonthenet. com Và bảng đơn đặt hàng với dữ liệu sau order_idcustomer_idorder_date170002016/04/18250002016/04/18380002016/04/19440002016/04/205NULL2016/05/01 Nhập câu lệnh SQL sau Thử điSELECT customers.customer_id, orders.order_id, orders.order_date FROM customers LEFT OUTER JOIN orders ON customers.customer_id = orders.customer_id ORDER BY customers.customer_id; Sẽ có 6 bản ghi được chọn. Đây là những kết quả mà bạn sẽ thấy customer_idorder_idorder_date400042016/04/20500022016/04/186000NULLNULL700012016/04/18800032016/04/199000NULLNULL Ví dụ LEFT OUTER THAM GIA này sẽ trả về tất cả các hàng từ bảng khách hàng và chỉ những hàng từ bảng đơn đặt hàng nơi các trường đã tham gia bằng nhau Nếu giá trị customer_id trong bảng khách hàng không tồn tại trong bảng đơn hàng, thì tất cả các trường trong bảng đơn hàng sẽ hiển thị dưới dạng NULL trong tập hợp kết quả. Như bạn có thể thấy, các hàng có customer_id là 6000 và 9000 sẽ được bao gồm nhưng các trường order_id và order_date cho các bản ghi đó chứa giá trị NULL. Hàng có order_id là 5 cũng sẽ được bao gồm nhưng trường customer_id cho bản ghi đó có giá trị NULL SQL THAM GIA là gì?Tham gia trong SQL có nghĩa là lấy dữ liệu từ hai hoặc nhiều hơn hai bảng dựa trên một trường chung. Nói cách khác, THAM GIA kết hợp dữ liệu từ nhiều bảng trong một bảng kết quả dựa trên một cột liên quan giữa các bảng đó
4 loại tham gia là gì?Bốn kiểu liên kết. trái, phải, trong và ngoài .
Làm thế nào để sử dụng truy vấn tham gia trong PHP với ví dụ?Chèn bản ghi vào hai bảng bằng PHP. Viết truy vấn SQL để thực hiện tất cả các phép nối bằng PHP. . THAM GIA BÊN TRONG. INNER JOIN là từ khóa chọn các bản ghi có giá trị khớp trong cả hai bảng. . CHỖ NỐI BÊN TRÁI. . QUYỀN THAM GIA Làm cách nào để tham gia hai bảng trong PHP?Chúng ta có thể sử dụng cú pháp của MySQL THAM GIA để nối hai bảng vào hàm PHP – mysql_query() . Hàm này được sử dụng để thực thi lệnh SQL và sau đó là một hàm PHP khác – mysql_fetch_array() có thể được sử dụng để tìm nạp tất cả dữ liệu đã chọn. |