Tóm tắt SQL trung cấp — JOIN, truy vấn con và window function trong một cái nhìn
Tóm tắt một trang của cả 14 bài SQL trung cấp — hàm tổng hợp và GROUP BY, INNER/OUTER JOIN, truy vấn con và EXISTS, phép toán tập hợp, CTE, window function, và transaction — được liên kết với sơ đồ và bảng phân loại.
Bức tranh toàn cảnh những gì bạn đã học trong SQL trung cấp
Trang này gom lại cú pháp đã đề cập trong loạt bài SQL trung cấp theo bốn trục: tổng hợp nhiều dòng thành một, kết hợp nhiều bảng với JOIN và truy vấn con, tính trên các dòng với window function, và commit các thay đổi cùng nhau với transaction.
Dùng các liên kết để nhảy về bất kỳ bài nào để ôn lại.
Tổng hợp dòng và kết hợp nhiều bảng
Hàm tổng hợp và GROUP BY gom nhiều dòng thành một giá trị, trong khi JOIN kết nối nhiều bảng qua một cột chung.
Sơ đồ bên dưới phác họa 2 bài về tổng hợp và 3 bài về join.
| Danh mục | Bài | Những gì bạn sẽ học |
|---|---|---|
| Tổng hợp | Hàm tổng hợp | Tổng hợp toàn bảng với COUNT / SUM / AVG / MIN / MAX |
| Tổng hợp | GROUP BY và HAVING | Tổng hợp theo nhóm, HAVING, và sự khác biệt với WHERE |
| Join | INNER JOIN và alias | Alias, INNER JOIN, ON / USING |
| Join | OUTER / CROSS / self join | LEFT / RIGHT / FULL, CROSS, self join |
| Join | JOIN trong thực tế | Kết hợp JOIN với WHERE / ORDER BY / CASE |
Soạn với truy vấn con, phép toán tập hợp, và window function
Truy vấn con và EXISTS cho phép bạn nhúng một truy vấn vào trong truy vấn khác, phép toán tập hợp và CTE gắn các tập kết quả lại với nhau và giữ mọi thứ dễ đọc, và window function tính rank và tổng lũy kế trên các dòng.
Các sơ đồ bên dưới phác họa truy vấn con / EXISTS / phép toán tập hợp / CTE, và 3 bài window function.
| Danh mục | Bài | Những gì bạn sẽ học |
|---|---|---|
| Truy vấn con | Truy vấn con ① IN / WHERE | Scalar, IN, tổng hợp trong WHERE, giới thiệu truy vấn con tương quan |
| Truy vấn con | Truy vấn con ② FROM / SELECT | Bảng dẫn xuất, truy vấn con mệnh đề SELECT, CREATE / INSERT SELECT |
| EXISTS | EXISTS và truy vấn con tương quan | EXISTS / NOT EXISTS và cách NULL tương tác với EXISTS |
| Phép toán tập hợp | UNION / INTERSECT / EXCEPT | Hợp, giao, hiệu, và UNION ALL |
| CTE | WITH (CTE) và CTE đệ quy | Lợi ích dễ đọc và đi qua phân cấp với CTE đệ quy |
| Window ① | OVER / PARTITION BY | Window tổng hợp và PARTITION BY |
| Window ② | ORDER BY và frame | Tổng lũy kế và định nghĩa frame (ROWS / RANGE) |
| Window ③ | Xếp hạng / hàm phân tích và thứ tự thực thi | ROW_NUMBER / RANK / LAG / LEAD / NTILE và thứ tự thực thi SQL |
| Transaction | Transaction và khóa | BEGIN / COMMIT / ROLLBACK, SAVEPOINT, AUTOCOMMIT |
Làm tốt lắm!
Bây giờ bạn đã kết nối tổng hợp và GROUP BY, kết hợp nhiều bảng với JOIN, truy vấn con và EXISTS, phép toán tập hợp và CTE, window function, và transaction trong một lượt.
Kết hợp các mảnh này lại và bạn có thể viết phần lớn các truy vấn phân tích, tổng hợp, và báo cáo mà bạn sẽ gặp trong công việc thực tế.
Nhảy về bất kỳ bài nào đã thu hút sự chú ý của bạn và thử các mẫu trên dữ liệu của riêng bạn.