Join Nhiều Bảng Trong Sql

     

Dẫn nhập

Trong bài trước, Kteam sẽ hướng dẫn các bạn về lượt thích và những cách tầm nã vấn TÌM KIẾM GẦN ĐÚNG vào SQL. Tiếp theo, họ sẽ bước đầu tìm phát âm về JOIN, ví dụ trong bài bác này là INNER JOIN.

Bạn đang xem: Join nhiều bảng trong sql

Nội dung chính

Để theo dõi tốt nhất bài này, chúng ta nên có kiến thức và kỹ năng về:

Trong bài này, họ sẽ thuộc nhau mày mò một số sự việc sau:

Database chủng loại Inner Join là gì? Inner Join 2 table vào SQL. Inner Join nhiều table trong SQL. Inner Join kết hợp điều kiện.

Database mẫu

Để thao tác tốt với bài xích này, họ sử dụng database giayphutyeuthuong.vn sau:

Inner Join là gì?

INNER JOIN là mệnh đề truy hỏi vấn với kết quả trả về là tập hợp những dữ liệu thỏa mãn nhu cầu điều kiện tầm thường từ 2 hay nhiều Table.

Điều kiện chung thường dựa vào liên kết khóa ngoại giữa hai Table.Mọi Inner Join đều cần phải có đk sau ON

Ta dễ dãi liên tưởng mang lại Inner Join thông qua biểu vật venn trong toán học tập về phép giao nhì tập hợp. Với A, B thay mặt cho tài liệu trong 2 Table. Inner Join đó là kết quả của phép toán A giaoB

*

Inner Join 2 Table trong SQL

Cấu trúc:

SELECT

FROM INNER JOIN

ON . =.

Trong đó:

tên những column cần hiển thị ở tác dụng truy vấn. Những column được ngăn cách với nhau bằng dấu phẩy (,), làtên những bảng để mang dữ liệu lúc truy vấn. thường là tên gọi column khóa ngoại tham chiếu từ bỏ table A mang lại column định danh vào Table B hoặc ngược lại.

Lưu ý: Ta hoàn toàn rất có thể viết tắt INNER JOIN là JOIN vào câu tróc nã vấn

So sánh giữa Inner Join đẳng cấp cũ và mới

Để làm rõ hơn về INNER JOINcũng như đối chiếu giữa Inner Join phong cách cũ với kiểu mới, ta sử dụng Databasegiayphutyeuthuong.vn làm việc đầu bài bác để tự thao tác làm việc trong quy trình theo dõi bài bác viết.

Ví dụ 1: Với yêu ước xuất ra thông tin giáo viên cùng tên cỗ môn mà cô giáo đó giảng dạy.

Ta xét sơ thiết bị CSDL gồm 2 Table GIAOVIEN với BOMON, tồn tại khóa ngoại link columnMABM từ bỏ GIAOVIEN tham chiếu cho column MABM nghỉ ngơi BOMON

*

Ta rất có thể thực hiện câu truy hỏi vấn này bên dưới hai giải pháp sau:

*

Ví dụ khác

Ví dụ 2: Xuất ra tin tức giáo viên (mã GV với tên) cùng tên fan thân tương xứng của giáo viên đó.

SELECT GV.MAGV,GV.HOTEN, NT.TEN AS "NGUOI THAN"FROM dbo.GIAOVIEN AS GV INNER JOIN dbo.NGUOITHAN AS NT ON NT.MAGV = GV.MAGVVí dụ 3: Xuất ra thông tin đề tài (mã DT, tên DT) cùng tên chủ đề của đề bài đó

SELECT DT.MADT,DT.TENDT,CD.TENCDFROM dbo.DETAI AS DT INNER JOIN dbo.CHUDE AS CD ON CD.MACD = DT.MACDVí dụ 4: Xuất ra tin tức đề tài (mã DT, thương hiệu DT) và tên giáo viên nhà nhiệm vấn đề đó

SELECT DT.MADT,DT.TENDT, GV.HOTENFROM dbo.GIAOVIEN AS GV INNER JOIN dbo.DETAI AS DT ON DT.GVCNDT = GV.MAGV

Inner Join các Table trong SQL

Cấu trúc:

SELECT

FROM

INNER JOIN ON

INNER JOIN ON ….

Xem thêm: Unit 3 Lớp 10 Trang 27 Sgk Tiếng Anh Lớp 10, Bài Tập 3 Trang 27

Trong đó:

tên các bảng cột buộc phải hiển thị ở hiệu quả truy vấn. Những column được chia cách với nhau bằng dấu phẩy (,), , làtên các bảng để đưa dữ liệu khi truy vấn., đk để truy vấn Inner Join của Table A với những Table khác.

Tương từ như Join 2 Table, Inner join các table cũng đều có tốc độ truy vấn cấp tốc hơn truy vấn có điều kiện (hay Inner Join hình dạng cũ).

Ví dụ

Ví dụ 5: với yêu cầu xuất ra tin tức giáo viên (mã GV, tên GV) và tên khoa mà giáo viên đó giảng dạy.

Ta xét sơ đồ vật CSDL bao gồm 3 Table KHOA, BOMON với GIAOVIEN vĩnh cửu khóa nước ngoài như hình.

*

-- Xuất thông tin GV và Khoa nhưng mà GV kia giảng dạySELECT GV.MAGV,GV.HOTEN,K.TENKHOAFROM dbo.BOMON AS BM JOIN dbo.GIAOVIEN AS GV ON GV.MABM = BM.MABM JOIN dbo.KHOA AS K ON K.MAKHOA = BM.MAKHOAVí dụ 6: với yêu cầu xuất ra tên đề tài và tên những giáo viên gia nhập đề tài

Gợi ý: chúng ta có thể dựa trên database của 3 Table: DETAI, THAMGIADT cùng GIAOVIEN

SELECT DT.MADT, DT.TENDT,GV.HOTENFROM dbo.THAMGIADT AS TGDT INNER JOIN dbo.GIAOVIEN AS GV ON GV.MAGV = TGDT.MAGV INNER JOIN dbo.DETAI AS DT ON DT.MADT = TGDT.MADT

Inner Join phối kết hợp điều kiện

Bạn trả toàn rất có thể kết phù hợp INNER JOIN với các điều khiếu nại khác giả dụ cần bằng mệnh đề WHEREtương trường đoản cú ở bài TRUY VẤN CÓ ĐIỀU KIỆN

Ví dụ 7: Xuất ra thông tin các giáo viên nam, cỗ môn và khoa mà giáo viên đó giảng dạy.

SELECT GV.MAGV,GV.HOTEN,GV.PHAI,BM.TENBM, K.TENKHOAFROM dbo.BOMON AS BM JOIN dbo.GIAOVIEN AS GV ON GV.MABM = BM.MABM JOIN dbo.KHOA AS K ON K.MAKHOA = BM.MAKHOAWHERE GV.PHAI ="NAM"Ví dụ 8: Xuất ra thông tin đề tài (Mã DT, thương hiệu DT) với tên giáo viên công ty nhiệm đề tài tất cả ngày ngừng trước năm 2009

SELECT DT.MADT,DT.TENDT, GV. HOTEN AS N"GV công ty Nhiệm"FROM dbo.DETAI AS DT INNER JOIN dbo.GIAOVIEN AS GV ON GV.MAGV = DT.GVCNDTWHERE YEAR(NGAYKT)

Kết

Trong bài này, chúng ta đã khám phá về INNER JOINtrong SQL Server.

Bài sau họ sẽ mày mò về FULL OUTER JOIN trong SQL.

Xem thêm: Báo Cáo Lập Dự Án Đầu Tư Trồng Rau Sạch Công Nghệ Cao, Tiểu Luận Dự An Đầu Tư Trồng Rau Sạch

Cảm ơn các bạn đã theo dõi bài xích viết. Hãy nhằm lại comment hoặc góp ý của chúng ta để vạc triển bài viết tốt hơn. Đừng quên “Luyện tập –Thử thách –Không xấu hổ khó”.