SQL tham gia

Cách thực hiện phép nối đơn giản giữa hai bảng cơ sở dữ liệu

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?

Tham gia làđại số quan hệ áp dụng.

Giả sử bạn có 2 bảng,peoplecars:

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 hai bảng, bởi vì cảnh sát đã chặn Roger lái xe, trông 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 ra mộttham giavớ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ẽ lấy lại kết quả này:

 age 
-----
   8

What is happening? We are joining the two tables cars on two specific columns: name from the people table, and owner from the cars table.

Joins are a topic that can grow in complexity because there are many different kind of joins that you can use to do fancier things with multiple tables, but here is the most basic example.


More database tutorials: