Inner Join Nhiều Bảng Trong Sql

     

Dẫn nhập

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

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

Nội dung chính

Để theo dõi tốt nhất bài này, bạn nên có kỹ năng về:

Trong bài xích này, bọn họ sẽ thuộc nhau tò mò một số vấn đề sau:

Database mẫu Inner Join là gì? Inner Join 2 table trong SQL. Inner Join các table vào SQL. Inner Join phối hợp điều kiện.

Database mẫu

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

Inner Join là gì?

INNER JOIN là mệnh đề truy 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 các Table.

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

Ta dễ dàng liên tưởng đến Inner Join trải qua biểu vật venn trong toán học tập về phép giao nhị tập hợp. Cùng với A, B đại diện thay mặt cho tài liệu trong 2 Table. Inner Join chính là kết trái của phép toán A giaoB

*

Inner Join 2 Table vào SQL

Cấu trúc:

SELECT

FROM INNER JOIN

ON . =.

Trong đó:

tên các column bắt buộc hiển thị ở công dụng truy vấn. Những column được phân làn với nhau bởi dấu phẩy (,), làtên những bảng để mang dữ liệu khi truy vấn. thường là tên gọi column khóa nước ngoài tham chiếu tự table A mang lại column định danh trong Table B hoặc ngược lại.

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

So sánh thân Inner Join dạng hình cũ và mới

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

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

Ta xét sơ đồ dùng CSDL có 2 Table GIAOVIEN và BOMON, tồn tại khóa ngoại link columnMABM từ bỏ GIAOVIEN tham chiếu mang lại column MABM sinh hoạt BOMON

*

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

*

Ví dụ khác

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

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 tin tức đề tài (mã DT, tên DT) cùng tên chủ thể của vấn đề đó

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 chủ nhiệm chủ đề đó

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

Inner Join nhiều Table trong SQL

Cấu trúc:

SELECT

FROM

INNER JOIN ON

INNER JOIN ON ….

Xem thêm: Tủ Lạnh Lg Inverter 393 Lít Gn B422Wb, Tủ Lạnh Lg Inverter 393 Lít Gn

Trong đó:

tên các bảng cột yêu cầu hiển thị ở tác dụng truy vấn. Các column được chia cách với nhau bởi 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 các Table khác.

Tương tự như Join 2 Table, Inner join nhiều table cũng đều có tốc độ truy vấn vấn nhanh hơn truy vấn có điều kiện (hay Inner Join thứ hạng cũ).

Ví dụ

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

Ta xét sơ đồ gia dụng CSDL bao gồm 3 Table KHOA, BOMON và GIAOVIEN mãi sau khóa nước ngoài như hình.

*

-- Xuất thông tin GV cùng Khoa nhưng 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 thâm nhập đề tài

Gợi ý: bạn có thể dựa trên csdl 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 hợp điều kiện

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

Ví dụ 7: Xuất ra thông tin những giáo viên nam, bộ môn với khoa mà thầy giáo đó 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 tin tức đề tài (Mã DT, thương hiệu DT) cùng tên giáo viên chủ nhiệm đề tài gồm ngày kết thúc 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 đã tìm hiểu về INNER JOINtrong SQL Server.

Bài sau chúng ta sẽ tò mò về FULL OUTER JOIN vào SQL.

Xem thêm: Các Thuộc Tính Của Âm Thanh Có Tính Nhạc Bao Gồm Mấy Thuộc Tính Của Âm Nhạc

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