Truy Vấn Nhiều Bảng Trong Sql

      12

Dẫn nhập

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

Bạn đang xem: Truy vấn nhiều bảng trong sql

Nội dung chính

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

Trong bài xích này, chúng ta sẽ thuộc nhau khám phá một số vụ việc sau:

Database chủng loại 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 tốt với bài này, chúng ta sử dụng database thietkewebhcm.com.vn sau:

Inner Join là gì?

INNER JOIN là mệnh đề truy vấn vấn với hiệu quả trả về là tập hợp các dữ liệu vừa lòng điều kiện phổ biến từ 2 hay các Table.

Điều kiện thông thường thường phụ thuộc vào liên kết khóa ngoại thân hai Table.Mọi Inner Join đều sẽ phải có điều kiện sau ON

Ta thuận lợi liên tưởng mang đến Inner Join thông qua biểu đồ venn vào toán học về phép giao nhị tập hợp. Cùng với A, B thay mặt cho dữ 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 các column nên hiển thị ở kết quả truy vấn. Các column được phân cách 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 cho column định danh trong Table B hoặc ngược lại.

Lưu ý: Ta hoàn toàn hoàn toàn có thể viết tắt INNER JOIN là JOIN vào câu truy hỏi vấn

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

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

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

Ta xét sơ thứ CSDL gồm 2 Table GIAOVIEN cùng BOMON, lâu dài khóa ngoại link columnMABM từ GIAOVIEN tham chiếu mang đến column MABM sống BOMON

*

Ta hoàn toàn có thể thực hiện câu truy vấn vấn này dưới hai biện pháp sau:

*

Ví dụ khác

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

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) và 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ới 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 những Table trong SQL

Cấu trúc:

SELECT

FROM

INNER JOIN ON

INNER JOIN ON ….

Xem thêm: Hướng Dẫn Cài Đặt Sublime Text 3, Hướng Dẫn Cài Đặt Sử Dụng Sublime Text 3

Trong đó:

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

Tương từ như Join 2 Table, Inner join các table cũng đều có tốc độ truy nã vấn nhanh hơn tầm nã vấn có điều kiện (hay Inner Join kiểu cũ).

Ví dụ

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

Ta xét sơ đồ CSDL có 3 Table KHOA, BOMON với GIAOVIEN sống thọ khóa nước ngoài như hình.

*

-- Xuất tin tức GV với Khoa mà GV đó 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 mong xuất ra tên vấn đề 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 hợp điều kiện

Bạn trả toàn có thể kết vừa lòng INNER JOIN với các điều kiện khác trường hợp cần bởi mệnh đề WHEREtương trường đoản cú ở bài xích 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 tin tức đề tài (Mã DT, thương hiệu DT) và tên giáo viên công ty nhiệm đề tài bao gồm ngày xong trước năm 2009

SELECT DT.MADT,DT.TENDT, GV. HOTEN AS N"GV chủ 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 vào SQL.

Cảm ơn chúng ta đã theo dõi bài bác viết. Hãy để lại bình luận hoặc góp ý của bạn để phạt 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 trinh nữ khó”.

hotlive |

Hi88