การวิเคราะห์แบบมีเงื่อนไข

SQL ระดับกลางด้วย AI

Jasmin Ludolf

Senior Data Science Content Developer

Conditional aggregates

Prompt: แสดงจำนวนภาพยนตร์ที่มีและไม่มีงบประมาณ แยกตามปี

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                   |
...
SQL ระดับกลางด้วย AI

Conditional aggregates

ไดอะแกรมเงื่อนไข

SQL ระดับกลางด้วย AI

Conditional aggregates

Prompt: แสดงจำนวนภาพยนตร์ที่มีและไม่มีงบประมาณ แยกตามปี

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                   |
...
  • ถ้าภาพยนตร์ตรงตามเงื่อนไข จะนับเป็น 1
SQL ระดับกลางด้วย AI

Conditional aggregates

Prompt: แสดงจำนวนภาพยนตร์ที่มีและไม่มีงบประมาณ แยกตามปี

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                   |
...
SQL ระดับกลางด้วย AI

Conditional aggregates with NULLs

Prompt: แสดงจำนวนภาพยนตร์ที่มีและไม่มีงบประมาณ แยกตามปี

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;
  • NULLs อยู่ใน films_without_budget
  • อาจต้องกรองด้วย WHERE
SQL ระดับกลางด้วย AI

การผสานเทคนิคต่างๆ

Prompt: สำหรับแต่ละปีหลัง 2000 ที่มีภาพยนตร์ที่มีข้อมูลงบประมาณอย่างน้อย 5 เรื่อง ให้จัดหมวดหมู่ภาพยนตร์เป็น High Budget หากงบประมาณเกิน 1 ล้าน และ Low Budget หากงบประมาณไม่เกิน 1 ล้าน แสดงจำนวนแต่ละหมวด เรียงตามปี และแสดง 10 ผลลัพธ์แรก

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;
SQL ระดับกลางด้วย AI

ไปให้ไกลกว่าการนับ

$$

  • รูปแบบเงื่อนไขใช้ได้กับ aggregate อื่นๆ ด้วย

$$

  • ทดลองปรับเงื่อนไขและค่าเกณฑ์

$$

  • เผยให้เห็น insight ที่ซ่อนอยู่

$$

ค้นพบ insights

SQL ระดับกลางด้วย AI

มาฝึกกันเถอะ!

SQL ระดับกลางด้วย AI

Preparing Video For Download...