Nhiều tham gia trong MySQL
Đây là cú pháp truy vấn SQL chung để nối ba hoặc nhiều bảng. Truy vấn SQL này sẽ hoạt động trong tất cả các cơ sở dữ liệu quan hệ chính như MySQL, Oracle, Microsoft SQLServer, Sybase và PostgreSQL Show
Cho đến nay, các bài viết của chúng tôi trong loạt bài "Hướng dẫn minh họa" đã giải thích một số kiểu nối. SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1s, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;2s ( SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;4, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;5), SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;6, tự tham gia và tham gia không đẳng thức. Trong phần cuối cùng của loạt bài này, chúng tôi chỉ cho bạn cách tạo các truy vấn SQL khớp với dữ liệu từ nhiều bảng bằng cách sử dụng một hoặc nhiều kiểu nối Tham gia các loại trong truy vấn SQLTrước khi chúng ta bắt đầu thảo luận về các truy vấn SQL ví dụ sử dụng nhiều kiểu nối, hãy tóm tắt ngắn gọn về các kiểu nối mà chúng ta đã đề cập cho đến nay, chỉ để chắc chắn rằng bạn hiểu sự khác biệt. Cuối cùng, đây là một bản tóm tắt ngắn ở dạng bảng. Hãy xem Loại JOINKết hợp bản ghi từ bảngGiải thíchSELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;7 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t JOIN color c ON t.color_id = c.id ; Kết quả idsizecolor_ididcolor2M11yellow3NULL33blue MộtSELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 trả về các bản ghi khớp trong cả hai bảng. ______09 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ; Kết quả. idsizecolor_ididcolor2M11yellow3NULL33blue1SNULLNULLNULL ASELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3 trả về tất cả các bản ghi từ bảng bên trái, ngay cả khi chúng không khớp trong bảng bên phải. Các giá trị bị thiếu trở thành SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21s. ______122 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;2 Kết quả. idsizecolor_ididcolor2M11yellow3NULL33blueNULLNULLNULL2NULL ASELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;4 trả về tất cả các bản ghi từ bảng bên phải, ngay cả khi chúng không khớp với các bản ghi trong bảng bên trái. Các giá trị bị thiếu trở thành SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21s. ______125 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;8 Kết quả. idsizecolor_ididcolor2M11yellow3NULL33blue1SNULLNULLNULLNULLNULLNULL2NULL ASELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;5 trả về tất cả các bản ghi từ cả hai bảng. trái và phải, ngay cả khi các hàng không khớp. Các giá trị bị thiếu trở thành SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21s. ______128 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;2 Kết quả. idsizecolor_ididcolor2M11yellow2M12NULL2M13blue3NULL31yellow3NULL32NULL3NULL33blue1SNULL1yellow1SNULL2NULL1SNULL3blue A SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;6 trả về tích Descartes của các bản ghi từ cả hai bảng. Điều này có nghĩa là mỗi bản ghi từ bảng bên trái được nối với từng bản ghi từ bảng bên phải. Các giá trị bị thiếu trở thành SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21s. Lưu ý rằng kết quả của mỗi loại liên kết chứa dữ liệu đến từ bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;81 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82. Loại liên kết cụ thể xác định nội dung của bảng sẽ được trả về Tham gia nhiều lần trong SQL là gì?Mỗi truy vấn có thể bao gồm không, một hoặc nhiều phép nối. Nhiều phép nối là việc sử dụng nhiều hơn một phép nối trong một truy vấn. Các liên kết được sử dụng có thể cùng loại hoặc các loại của chúng có thể khác nhau. Chúng ta sẽ bắt đầu thảo luận bằng cách hiển thị một truy vấn ví dụ sử dụng hai phép nối cùng loại. Hãy xem truy vấn dưới đây SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;7 Truy vấn gọi hai SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 để nối ba bảng. SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82. Chỉ những bản ghi phù hợp trong mỗi bảng sẽ được trả về. Trước tiên, hãy xem các bộ dữ liệu đã được nối Có ba bộ dữ liệu tương ứng với ba bảng trong cơ sở dữ liệu. SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85, được trình bày bên dưới SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85idlastname1Watson2Miller3Smith4Brown SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21idname1green2yellow3blue SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;22idnamecolor_idperson_id1car142bicycle2NULL3motorcycleNULL14scooter13 Bạn có thể thấy rằng mỗi SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 trong bảng xe có một màu, ngoại trừ SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;24. Mỗi phương tiện đều được chỉ định một chủ sở hữu, ngoại trừ SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;25 không có chủ sở hữu. Một trong các màu ( SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;26) trong bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 không được chỉ định cho bất kỳ phương tiện nào. Hơn nữa, xe máy không có sẵn màu trong cơ sở dữ liệu. Mặt khác, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;25 có màu được chỉ định, nhưng không có chủ sở hữu. Cuối cùng, người tên SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;29 không được giao xe Trong truy vấn trên, chúng tôi đã sử dụng phép nối nhiều lần để chỉ truy xuất những phương tiện được chỉ định cả màu sắc và chủ sở hữu. Bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 có cột SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;71 xác định SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 trong bảng màu, cũng như cột ________ 273 xác định ________ 185 trong bảng người kết quả truy vấn têntênhọxe hơimàu xanh lá câyNâuxe tay gamàu xanh láSmithHóa ra chỉ có hai bản ghi phù hợp với tiêu chí được xác định bởi hai phép nối bên trong Hình dưới đây trình bày trình tự nối các bản ghi từ các bảng tương ứng Lưu ý rằng tất cả các hoạt động của SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75 được thực hiện từ trái sang phải. Ở bước một, các bảng trong SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75 đầu tiên được so khớp (bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82). Kết quả là một bảng trung gian được tạo. Ở bước hai, bảng trung gian này (được coi là bảng bên trái) được nối với một bảng khác (bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85) bằng cách sử dụng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75 thứ hai Hãy nhớ rằng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75 thuộc bất kỳ loại nào sẽ tạo ra một bảng trung gian duy nhất (thường được gọi là bảng dẫn xuất) trong một truy vấn nhiều tham gia Kết hợp trái và phải tham gia với tham gia bên trongCũng có thể kết hợp các loại phép nối khác nhau trong truy vấn nhiều phép nối. Hãy lấy một ví dụ với một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3. Giả sử chúng tôi muốn truy vấn cơ sở dữ liệu của mình cho tất cả những người sở hữu một chiếc xe có màu hoặc hoàn toàn không sở hữu một chiếc xe nào Theo trực giác, chúng ta sẽ bắt đầu với bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85 và nối nó với bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 bằng cách sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3. Trong trường hợp đó, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3 sẽ khớp từng bản ghi từ bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85 với một bản ghi từ bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và đối với bất kỳ người nào không tìm thấy bản ghi phù hợp, nó sẽ điền các giá trị còn thiếu bằng các giá trị SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21. Sự kết hợp này sẽ tạo ra một danh sách tất cả những người trong cơ sở dữ liệu với bất kỳ dữ liệu phương tiện được liên kết nào, ngay cả khi họ không sở hữu một. Nhưng chúng tôi muốn chỉ nhìn thấy những chiếc xe có màu sắc được chỉ định. Điều này có nghĩa là chúng ta phải sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 trên các bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82. Đây là một truy vấn đáp ứng yêu cầu cụ thể đó, nhưng nó có thực hiện công việc không? SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;9 Không. Truy vấn này trả về cùng một kết quả mà chúng ta đã thu được từ truy vấn trước đó (chỉ sử dụng các SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1). Danh sách của chúng tôi không bao gồm những người không có xe Kết quả xe_tênmàu_tênhọxemàu xanh láMàu nâuxe tay gamàu xanh láSmithNhưng chuyện gì đã xảy ra? . e. trong bảng dẫn xuất (được tạo bằng cách nối các bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84) và bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82. Làm thế nào chúng ta có thể giải quyết vấn đề này? Truy vấn sau đây trình bày một trong số ít giải pháp khả thi. Ở đây, bảng dẫn xuất trả về các phương tiện chỉ có màu sắc và sau đó được ____04ed với bảng ____185 để có được tất cả những người SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t JOIN color c ON t.color_id = c.id ;7 Kết quả lastnamenamenameSmithscootergreenBrowncargreenMillerWatsonBây giờ chúng tôi có một danh sách tất cả những người. những người có xe màu và những người không có xe. Chúng tôi bắt đầu với một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82. Mỗi phương tiện có trong bảng dẫn xuất phải được chỉ định một màu, đó là lý do tại sao kiểu liên kết này phù hợp. Sau khi đã chọn các phương tiện có màu, giờ đây chúng tôi có thể sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;4 trên bảng dẫn xuất với bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85, đó là cách chúng tôi có được những người không phải là chủ sở hữu phương tiện cùng với những người (từ bảng dẫn xuất) sở hữu một phương tiện có màu Một phương pháp khác để giải quyết vấn đề này là sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;3 trên bảng người và một truy vấn con trong đó chúng tôi đã sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 trên các bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 Hãy xem truy vấn dưới đây SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;7 THAM GIA hỗn hợp với THAM GIA đầy đủTuy nhiên, một loại đa tham gia khác sử dụng các tham gia đầy đủ. Đầu tiên, chúng ta hãy xem một liên kết nhiều chỉ với các liên kết đầy đủ SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;8 Truy vấn trên khớp với các bản ghi từ ba bảng. SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85, SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 theo cách mà ngay cả các bản ghi không trùng khớp trong hai bảng còn lại sẽ xuất hiện trong bảng kết quả. Các cột trống sẽ được lấp đầy bằng các giá trị SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;21. Đó là lý do tại sao truy vấn trả về tất cả mọi người bất kể họ có phương tiện hay không, tất cả phương tiện bất kể họ có được chỉ định màu hay không và tất cả các màu bất kể họ được chỉ định cho phương tiện nào Kết quả lastnamenamenameSmithscootergreenBrowncargreenbicycleyellowblueWatsonmotorcycleMillerChúng tôi đã sử dụng phép nối đầy đủ để nối tất cả các bản ghi, ngay cả những bản ghi không khớp. Hãy nhớ rằng phép nối đầy đủ trả về tất cả các bản ghi, trong khi phép nối bên trong chỉ trả về những bản ghi khớp Hình dưới đây giải thích trình tự nối các bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;5 cũng có thể xuất hiện trong một truy vấn với một loại liên kết khác, do đó tạo ra một liên kết nhiều loại với các loại hỗn hợp. Truy vấn dưới đây sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;5 với một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1 SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;0 Truy vấn này cho phép chúng tôi truy xuất danh sách tất cả mọi người, cho dù họ có phải là chủ phương tiện hay không và tất cả các phương tiện được chỉ định màu Đây là cách hai phép nối hoạt động Đầu tiên, các bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;84 và SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;82 được kết hợp bằng cách sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;1. Tiếp theo, bảng dẫn xuất được kết hợp với bảng SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;85 bằng cách sử dụng một SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;5. Đây là kết quảhọtêntênSmithxe tay gamàu xanh láNâuxe hơimàu xanh láxe đạpmàu vàngWatsonMiller Tóm lượcMột truy vấn SQL duy nhất có thể tham gia hai hoặc nhiều bảng. Khi có ba bảng trở lên tham gia, các truy vấn có thể sử dụng một loại liên kết nhiều lần hoặc chúng có thể sử dụng nhiều loại liên kết. Khi sử dụng nhiều kiểu nối, chúng ta phải xem xét cẩn thận trình tự nối để tạo ra kết quả mong muốn. Các ví dụ được trình bày trong bài viết này chứng minh rõ ràng cách một thay đổi nhỏ trong loại phép nối, (hoặc, trong trường hợp có nhiều phép nối, thứ tự chúng xuất hiện trong truy vấn) có thể thay đổi hoàn toàn kết quả truy vấn, tạo ra hoặc phá vỡ thành công Chúng ta nên đặc biệt chú ý đến những kết hợp tham gia nào? . Mỗi kết hợp này có thể tạo ra kết quả truy vấn sai khi được sử dụng không phù hợp Tìm hiểu thêm về SQLKiến thức cơ bản về phép nối SQL là bắt buộc, nhưng hầu hết những người mới bắt đầu học SQL đều cảm thấy sợ hãi trước các câu lệnh SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75. Sự thật là không có gì phải sợ Trong bài viết này, chúng tôi đã thảo luận cách sử dụng nhiều liên kết trong một truy vấn. một trong hai loại SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;07 hoặc hỗn hợp SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75. Bạn có thể tìm thêm thông tin về phép nối trong tài liệu toàn diện về SQL của Học viện Vertabelo. Trong các khóa học, bạn sẽ nâng cao đáng kể chuyên môn, kiểm tra và mài giũa các kỹ năng mới của mình thông qua các bài tập thực hành tương tác được cung cấp. Bắt đầu từ khóa học Cơ bản về SQL nếu bạn chưa có kiến thức về SQL trước đó. Tham gia khóa học SQL THAM GIA để thực hành truy vấn nhiều bảng thông qua rất nhiều bài tập tương tác trên các câu lệnh SELECT t.id, t.size, t.color_id, c.id, c.color FROM tshirt t LEFT JOIN color c ON t.color_id = c.id ;75. Hãy thử nó ngay bây giờ để được miễn phí Chúng ta có thể sử dụng nhiều phép nối trong SQL không?Câu lệnh Tham gia SQL
. Trong trường hợp này, hai bảng được nối bằng quan hệ table1. id = bảng2. Tôi. Có thể sử dụng nhiều câu lệnh nối cùng nhau để nối nhiều bảng cùng lúc .
Chúng ta có thể tham gia 4 bảng trong MySQL không?THAM GIA PHẢI 4 Bàn
. If you need to join 4 tables using INNER JOIN, you will get the result in a new table with matching values in all right tables.
Chúng ta có thể tham gia 5 bảng trong MySQL không?Một truy vấn SQL có thể THAM GIA nhiều bảng . Đối với mỗi bảng mới, một điều kiện THAM GIA bổ sung được thêm vào. THAM GIA nhiều bảng hoạt động với các truy vấn CHỌN, CẬP NHẬT và XÓA.
Nhiều phép nối được thực thi trong SQL như thế nào?Nhiều liên kết có thể được mô tả là một truy vấn chứa các liên kết cùng loại hoặc khác loại được sử dụng nhiều lần , do đó mang lại cho họ khả năng . Đối với bài viết này, trước tiên chúng ta sẽ tạo cơ sở dữ liệu chuyên viên máy tính, sau đó tạo ba bảng trong đó rồi chạy các truy vấn của chúng ta trên các bảng đó. |