Phân tích có điều kiện

Truy vấn SQL Trung cấp với AI

Jasmin Ludolf

Senior Data Science Content Developer

Tổng hợp có điều kiện

Yêu cầu: Hiển thị số phim có ngân sách và không có ngân sách theo từng năm

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
Truy vấn SQL Trung cấp với AI

Tổng hợp có điều kiện

Sơ đồ điều kiện

Truy vấn SQL Trung cấp với AI

Tổng hợp có điều kiện

Yêu cầu: Hiển thị số phim có ngân sách và không có ngân sách theo từng năm

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
  • Nếu phim thỏa điều kiện, sẽ đếm 1
Truy vấn SQL Trung cấp với AI

Tổng hợp có điều kiện

Yêu cầu: Hiển thị số phim có ngân sách và không có ngân sách theo từng năm

SELECT 
    release_year,
    SUM(CASE WHEN budget IS NOT NULL THEN 1 ELSE 0 END) AS films_with_budget,
    SUM(CASE WHEN budget IS NULL THEN 1 ELSE 0 END) AS films_without_budget
FROM  films
GROUP BY release_year;
|release_year|films_with_budget|films_without_budget|
|------------|-----------------|--------------------|
|1964        |10               |0                   |
|1969        |9                |1                   |
...
Truy vấn SQL Trung cấp với AI

Tổng hợp có điều kiện với NULL

Yêu cầu: Hiển thị số phim có ngân sách và không có ngân sách theo từng năm

SELECT 
    release_year,
    COUNT(CASE WHEN budget IS NOT NULL THEN 1 END) AS films_with_budget,
    COUNT(CASE WHEN budget IS NULL THEN 1 END) AS films_without_budget
FROM films
GROUP BY release_year;
  • NULL nằm trong films_without_budget
  • Có thể cần lọc bằng WHERE
Truy vấn SQL Trung cấp với AI

Kết hợp kỹ thuật

Yêu cầu: Với mỗi năm sau 2000 có ít nhất 5 phim có dữ liệu ngân sách, phân loại phim là Ngân sách cao nếu > 1 triệu và Ngân sách thấp nếu ≤ 1 triệu, và hiển thị số lượng cho mỗi loại, sắp theo năm và lấy 10 kết quả đầu

SELECT 
    release_year,

COUNT(CASE WHEN budget > 1000000 THEN 1 END) AS high_budget_count, COUNT(CASE WHEN budget <= 1000000 THEN 1 END) AS low_budget_count
FROM films
WHERE release_year > 2000 AND budget IS NOT NULL
GROUP BY release_year
HAVING COUNT(*) >= 5
ORDER BY release_year LIMIT 10;
Truy vấn SQL Trung cấp với AI

Vượt ngoài đếm số

$$

  • Mẫu điều kiện cũng dùng với các tổng hợp khác

$$

  • Thử nghiệm điều kiện và ngưỡng

$$

  • Khai mở insight ẩn

$$

Khám phá insight

Truy vấn SQL Trung cấp với AI

Ayo berlatih!

Truy vấn SQL Trung cấp với AI

Preparing Video For Download...