Cải thiện hiệu năng truy vấn trong PostgreSQL
Amy McCarty
Instructor
Truy vấn

Kế hoạch thực thi truy vấn



Join là gì?
Join là gì?
Vì sao dùng join?
Cách dùng?
| Mã bán | Ngày đặt | Số tiền | Mã KH |
|---|---|---|---|
| 01 | 2019-02-02 | 145.30 | 911 |
| ID | Tên | Khách hàng từ |
|---|---|---|
| 911 | Jim Smith | 2019-01-01 |
| Mã bán | Ngày đặt | Số tiền | Tên |
|---|---|---|---|
| 01 | 2019-02-02 | 145.30 | Jim Smith |

SELECT *
FROM athletes a
INNER JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |

SELECT *
FROM athletes a
INNER JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |

SELECT *
FROM athletes
INNER JOIN countries
USING (country)
| VĐV | Country | Tên | Dân số (triệu) |
|---|---|---|---|
| Jack | AUT | Austria | 9 |
| Aditya | IND | India | 1,339 |
| Mikhail | RUS | Russia | 145 |

SELECT *
FROM athletes
INNER JOIN countries
USING (country)
| VĐV | Country | Tên | Dân số (triệu) |
|---|---|---|---|
| Jack | AUT | Austria | 9 |
| Aditya | IND | India | 1,339 |
| Mikhail | RUS | Russia | 145 |

SELECT *
FROM athletes a
LEFT JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) | |
|---|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 | |
| Aditya | IND | IND | India | 1,339 | |
| Mikhail | RUS | RUS | Russia | 145 | |
| Javier | MEX |

SELECT *
FROM athletes a
LEFT JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |
| Javier | MEX |

SELECT *
FROM athletes a
RIGHT JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |
| BRA | Brazil | 209 |

SELECT *
FROM athletes a
RIGHT JOIN countries c
ON a.country = c.country
| VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |
| BRA | Brazil | 209 |
SELECT *
FROM athletes a
FULL OUTER JOIN countries c
ON a.country = c.country

| Tên VĐV | Country | Country1 | Tên | Dân số (triệu) |
|---|---|---|---|---|
| Jack | AUT | AUT | Austria | 9 |
| Aditya | IND | IND | India | 1,339 |
| Mikhail | RUS | RUS | Russia | 145 |
| Javier | MEX | |||
| BRA | Brazil | 209 |
Cải thiện hiệu năng truy vấn trong PostgreSQL