Tham gia là một công cụ rất mạnh mẽ. Bạn có nhớ đại số quan hệ từ mô-đun giới thiệu cơ sở dữ liệu không?
Các phép nối là đại số quan hệ áp dụng .
Giả sử bạn có 2 bảng, people
và cars
:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL PRIMARY KEY
);
CREATE TABLE cars (
brand CHAR(20) NOT NULL,
model CHAR(20) NOT NULL,
owner CHAR(20) NOT NULL PRIMARY KEY
);
Chúng tôi thêm một số dữ liệu:
INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (8, 'Roger');
INSERT INTO cars VALUES ('Ford', 'Fiesta', 'Flavio');
INSERT INTO cars VALUES ('Ford', 'Mustang', 'Roger');
Bây giờ, hãy nói rằng chúng ta muốn so sánh giữa hai bảng, vì cảnh sát đã chặn Roger lái xe, trông còn trẻ và muốn biết tuổi của anh ta từ cơ sở dữ liệu của họ.
Roger là con chó của tôi, nhưng giả sử chó có thể lái ô tô.
Chúng tôi có thể tạo tham gia với cú pháp này:
SELECT age FROM people JOIN cars ON people.name = cars.owner WHERE cars.model='Mustang';
Chúng tôi sẽ nhận lại kết quả này:
age
-----
8
Điều gì đang xảy ra? Chúng tôi đang kết hợp hai bảng ô tô trên hai cột cụ thể:name
từ people
bảng và owner
từ cars
bảng.
Liên kết là một chủ đề có thể trở nên phức tạp vì có nhiều loại liên kết khác nhau mà bạn có thể sử dụng để thực hiện những việc phức tạp hơn với nhiều bảng, nhưng đây là ví dụ cơ bản nhất.