🎙️ 1. Mở Đầu: Khi Những Con Số Biết “Khiêu Vũ”
Chào mừng các phi hành gia đã quay trở lại trạm điều hành! 🚀
Ở Bài 6, chúng ta đã học cách “mở cửa” kho chứa dữ liệu. Nhưng hãy tưởng tượng, phi thuyền của bạn đang nhận được hàng triệu tín hiệu từ các thiên hà xa xôi. Bạn không thể chỉ nhìn từng dòng dữ liệu một cách đơn thuần. Bạn cần biết cách:
• Tìm những hành tinh có tên bắt đầu bằng chữ “A” (vì bạn quên mất tên đầy đủ).
• Đếm xem có bao nhiêu ngôi sao trong mỗi chòm sao.
• Tính toán khối lượng trung bình của các thiên thạch vừa thu thập được.
Đó chính là lúc chúng ta cần đến SQL Nâng Cao. Bài học này sẽ biến bạn từ một người “soi đèn pin” đơn thuần thành một “nhà giải mã cấp cao”, có khả năng tổng hợp và liên kết các luồng thông tin phức tạp nhất.
Mục tiêu của chúng ta:
• Làm chủ các kỹ thuật lọc nâng cao (LIKE, BETWEEN).
• Sắp xếp và nhóm dữ liệu để tìm ra quy luật (ORDER BY, GROUP BY).
• Sử dụng các “siêu máy tính” nội tại (Hàm tích hợp) để tính toán nhanh chóng.
• Học cách lồng ghép các câu lệnh (Sub-queries) và kết nối các kho tàng tri thức khác nhau (Multiple Tables).
• Thời gian thám hiểm: 2 giờ 50 phút.
🏛️ 2. Lý Thuyết & Khái Niệm: Hệ Thống Cảm Biến Cấp Cao
Trong vũ trụ dữ liệu, thông tin thường ẩn mình dưới những hình thức không rõ ràng. Hãy cùng nâng cấp hệ thống quét của phi thuyền nhé!
A. Bộ Lọc “Mờ” (String Patterns & Ranges)
Đôi khi bạn không nhớ chính xác “tên đối tượng”. SQL cho phép bạn dùng LIKE cùng ký tự % (đại diện cho một chuỗi bất kỳ).
• Ví dụ: LIKE ‘H%’ sẽ tìm thấy tất cả các hành tinh bắt đầu bằng chữ H.
• Ranges: Giúp bạn quét dữ liệu trong một khoảng nhất định (ví dụ: nhiệt độ từ 100 đến 500 độ).
B. Sắp Xếp Hành Trang (Sorting & Grouping)
• ORDER BY: Sắp xếp dữ liệu theo thứ tự tăng dần (mặc định) hoặc giảm dần (DESC). Giống như việc bạn xếp các mẫu vật theo kích thước từ nhỏ đến lớn.
• GROUP BY: Đây là “máy phân loại” tự động. Nó gom những bản ghi giống nhau (ví dụ: cùng bộ phận, cùng thành phố) lại một nhóm để bạn dễ dàng xử lý.
C. Siêu Máy Tính Tính Toán (Built-in Functions)
Thay vì lấy dữ liệu ra rồi mới tính bằng tay, hãy để SQL làm việc đó:
• SUM, AVG, MIN, MAX: Tính tổng, trung bình, nhỏ nhất, lớn nhất.
• UCASE, LCASE: Chuyển đổi chữ hoa, chữ thường.
📺 Trạm tiếp sóng (Video bài học):
• Video 1: Sử dụng String Patterns, Ranges
• Video 2: Sorting Result Sets
• Video 3: Grouping Result Sets
• Video 4: Built-in Database Functions
• Video 5: Sub-Queries and Nested Selects
Lưu ý: Truy vấn lồng nhau giống như những con búp bê Nga, một lệnh nằm gọn trong một lệnh khác.
🛠️ 3. Thực Hành & Vận Dụng: Thử Thách Lab 2
Để trở thành chuyên gia, bạn cần đối mặt với các truy vấn phức tạp trên nhiều bảng dữ liệu cùng lúc.
• Google Colab / SQL Editor: Hãy mở công cụ XAMPP của bạn lên và thực hành các bài tập sau:
1 Tìm tất cả nhân viên có họ kết thúc bằng chữ ‘n’.
2 Tính lương trung bình của từng phòng ban (Sử dụng GROUP BY).
3 Tìm nhân viên có mức lương cao hơn mức lương trung bình của toàn công ty (Sử dụng Sub-query).
📝 4. HaivanStory Quiz: Sát Hạch Phi Hành Gia Cấp 7
Hãy chứng minh bạn đã sẵn sàng điều khiển các luồng dữ liệu phức tạp!
Bài 7: SQL Nâng Cao
🌟 5. Câu Chuyện HaivanStory: “Khi Dữ Liệu Biết Nói”
Trong một sứ mệnh thám hiểm y tế thực tế, các nhà khoa học đã sử dụng Sub-queries để lọc ra danh sách những bệnh nhân có chỉ số đường huyết cao hơn mức trung bình của vùng dịch tễ đó. Bằng cách kết hợp (JOIN) bảng “Bệnh án” với bảng “Vị trí địa lý”, họ phát hiện ra một cụm dân cư đang sử dụng nguồn nước bị ô nhiễm chì.
Chỉ bằng vài dòng lệnh SQL nâng cao, một cuộc khủng hoảng sức khỏe đã được ngăn chặn. Dữ liệu không chỉ là con số, nó là những mảnh ghép của sự thật mà chỉ những người làm chủ SQL mới có thể ráp nối lại thành một bức tranh hoàn chỉnh.
✅ 6. Tổng Kết & Hướng Đi Tiếp Theo
• Đã hoàn thành: Kỹ thuật lọc nâng cao, sắp xếp, nhóm dữ liệu và truy vấn lồng nhau.
• Kỹ năng mới: Bạn đã có thể trích xuất những thông tin “ngách” nhất từ những kho dữ liệu khổng lồ.
• Bước tiếp theo: Bài 8 – Truy cập cơ sở dữ liệu bằng Python. Ở bài sau, chúng ta sẽ học cách biến Python thành một “cánh tay robot” để tự động gõ các lệnh SQL này giúp bạn. Hãy sẵn sàng để trở thành một nhà lập trình dữ liệu thực thụ nhé!
📢 Kêu gọi hành động: Bạn thấy hàm GROUP BY hay Sub-query thú vị hơn? Hãy để lại ý kiến của mình dưới phần bình luận để cùng thảo luận với các phi hành gia khác nhé! 🚀



