MySQL Tự tham gia
MySQL Tự tham gia
Tự tham gia là một tham gia thông thường, nhưng bảng được kết hợp với chính nó.
Cú pháp tự tham gia
SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;
T1 và T2 là các bí danh bảng khác nhau cho cùng một bảng.
Cơ sở dữ liệu Demo
Trong hướng dẫn này, chúng tôi sẽ sử dụng cơ sở dữ liệu mẫu Northwind nổi tiếng.
Dưới đây là lựa chọn từ bảng "Khách hàng":
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
Ví dụ về MySQL Self Join
Câu lệnh SQL sau phù hợp với khách hàng đến từ cùng một thành phố:
Thí dụ
SELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2,
A.City
FROM Customers A, Customers B
WHERE A.CustomerID <> B.CustomerID
AND A.City = B.City
ORDER BY A.City;