SELECT, WHERE, GROUP BY
รวมข้อมูลแคมเปญ
SELECT, WHERE, GROUP BY เป็นบทเรียน Digital Marketing Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Digital Marketing Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Digital Marketing Academy มีบทเรียนทั้งหมด 4 บทเรียน
คำสั่งสามคำ
ตัวชี้วัดการตลาดแทบทุกอย่างสร้างจากส่วนคำสั่งสามส่วน ได้แก่ SELECT ใช้เลือกคอลัมน์ WHERE ใช้กรองแถวข้อมูล และ GROUP BY ใช้รวมแถวข้อมูลเป็นกลุ่ม
เชี่ยวชาญคำสั่งสามส่วนนี้ แล้วคุณจะตอบคำถามด้านการวิเคราะห์ที่เกิดขึ้นในแต่ละวันได้ด้วยตนเองเป็นส่วนใหญ่
SELECT channel, SUM(revenue) AS revenue
FROM orders
GROUP BY channel;SELECT: การเลือกคอลัมน์
SELECT ใช้ระบุสิ่งที่คุณต้องการรับกลับมา คุณสามารถเปลี่ยนชื่อคอลัมน์ด้วย AS เพื่อให้ผลลัพธ์อ่านง่าย และคำนวณค่าใหม่ได้ภายในคำสั่ง
รักษาชุดผลลัพธ์ให้กระชับ ดึงมาเฉพาะคอลัมน์ที่จำเป็นจริง ๆ โดยเฉพาะเมื่อทำงานกับตารางขนาดใหญ่
SELECT campaign_id AS campaign,
spend,
spend * 1.2 AS spend_with_fees
FROM campaigns;WHERE: การกรองแถวข้อมูล
WHERE จะเก็บไว้เฉพาะแถวข้อมูลที่ตรงกับเงื่อนไข คุณสามารถรวมเงื่อนไขด้วย AND และ OR เพื่อเจาะจงกลุ่มที่ต้องการ
ตัวกรองวันที่เป็นเครื่องมือพื้นฐานสำคัญของนักการตลาด เพราะช่วยกำหนดช่วงเวลารายงานได้อย่างแม่นยำ
SELECT *
FROM sessions
WHERE channel = 'email'
AND session_date >= DATE '2026-01-01'
AND device = 'mobile';การกรองด้วย IN และ BETWEEN
IN ใช้จับคู่กับค่าใดค่าหนึ่งในรายการ เหมาะอย่างยิ่งเมื่อทำงานกับหลายแคมเปญพร้อมกัน ส่วน BETWEEN ใช้ครอบคลุมช่วงค่า เหมาะสำหรับกำหนดช่วงวันที่
คำสั่งเหล่านี้ช่วยให้ตัวกรองที่ซับซ้อนสั้นและอ่านง่าย แทนการต่อเงื่อนไข OR ยาว ๆ
SELECT order_id, revenue
FROM orders
WHERE channel IN ('paid_search', 'paid_social')
AND order_date BETWEEN DATE '2026-03-01' AND DATE '2026-03-31';GROUP BY: การแบ่งกลุ่ม
GROUP BY จะรวมแถวข้อมูลที่มีค่าเดียวกันให้เหลือหนึ่งแถวต่อหนึ่งกลุ่ม ใช้คู่กับฟังก์ชันสรุปรวมอย่าง SUM, COUNT และ AVG เพื่อรับตัวชี้วัดแยกตามกลุ่ม
นี่คือวิธีเปลี่ยนเหตุการณ์ดิบให้กลายเป็นตารางผลการดำเนินงานแยกตามช่องทาง
SELECT channel,
COUNT(*) AS sessions,
SUM(revenue) AS revenue
FROM sessions
GROUP BY channel;ฟังก์ชันสรุปรวม
SUM ใช้รวมรายได้ COUNT ใช้นับเหตุการณ์ AVG ใช้หาค่าเฉลี่ย และ COUNT(DISTINCT ...) ใช้นับผู้ใช้ที่ไม่ซ้ำกัน
การนับแบบไม่ซ้ำมีความสำคัญในงานการตลาด จำนวนเซสชันทั้งหมดกับจำนวนผู้เข้าชมที่ไม่ซ้ำกันเป็นตัวเลขที่แตกต่างกันมาก
SELECT campaign_id,
COUNT(*) AS clicks,
COUNT(DISTINCT user_id) AS reach,
AVG(revenue) AS avg_order
FROM orders
GROUP BY campaign_id;การจัดกลุ่มหลายคอลัมน์
จัดกลุ่มด้วยคอลัมน์มากกว่าหนึ่งคอลัมน์เพื่อสร้างเมทริกซ์ เช่น ช่องทางแยกตามอุปกรณ์ ชุดค่าที่ไม่ซ้ำกันแต่ละชุดจะกลายเป็นแถวของตนเอง
วิธีนี้ช่วยให้แบ่งกลุ่มได้ลึกซึ้งยิ่งขึ้นโดยไม่ต้องส่งออกข้อมูลไปยังสเปรดชีต
SELECT channel, device,
COUNT(*) AS sessions
FROM sessions
GROUP BY channel, device
ORDER BY channel, sessions DESC;HAVING: การกรองกลุ่ม
WHERE ใช้กรองแถวก่อนจัดกลุ่ม ส่วน HAVING ใช้กรองกลุ่มหลังการรวมค่า ใช้ HAVING เพื่อเก็บไว้เฉพาะกลุ่มย่อยที่สูงกว่าเกณฑ์
ตัวอย่างเช่น แสดงเฉพาะแคมเปญที่ทำให้เกิดคำสั่งซื้อมากกว่า 100 รายการ
SELECT campaign_id, COUNT(*) AS orders
FROM orders
GROUP BY campaign_id
HAVING COUNT(*) > 100
ORDER BY orders DESC;การเรียงลำดับและจำกัดผลลัพธ์
ORDER BY เรียงลำดับผลลัพธ์เพื่อให้แถวสำคัญที่สุดปรากฏก่อน ส่วน LIMIT จำกัดจำนวนผลลัพธ์ที่แสดง เหมาะสำหรับรายงานอันดับต้น ๆ จำนวน N รายการ
เมื่อนำมาใช้ร่วมกัน ทั้งสองส่วนช่วยตอบได้ทันทีว่า "แคมเปญ 5 อันดับแรกของฉันเมื่อเรียงตามรายได้คือแคมเปญใด"
SELECT campaign_id, SUM(revenue) AS revenue
FROM orders
GROUP BY campaign_id
ORDER BY revenue DESC
LIMIT 5;การรวมค่าแบบมีเงื่อนไข
FILTER (หรือ CASE ภายในการรวมค่า) ทำให้คำสั่งสอบถามเดียวคำนวณตัวชี้วัดแบบมีเงื่อนไขได้หลายรายการพร้อมกัน เช่น รายได้จากลูกค้าใหม่เทียบกับลูกค้าที่กลับมา
วิธีนี้ช่วยเลี่ยงการเรียกใช้คำสั่งสอบถามหลายชุดและทำให้กลุ่มย่อยต่าง ๆ สอดคล้องกันอย่างสมบูรณ์
SELECT channel,
SUM(revenue) FILTER (WHERE is_new_customer) AS new_rev,
SUM(revenue) FILTER (WHERE NOT is_new_customer) AS repeat_rev
FROM orders
GROUP BY channel;รวมทุกส่วนเข้าด้วยกัน
คำสั่งสอบถามฉบับเต็มใช้ส่วนคำสั่งทั้งหมดต่อกัน: กรองแถวด้วย WHERE จัดกลุ่ม กรองกลุ่มด้วย HAVING แล้วจึงเรียงลำดับและจำกัดผลลัพธ์
อ่านจากบนลงล่าง แล้วจะเห็นภาพการวิเคราะห์ช่องทางของคุณอย่างครบถ้วน
SELECT channel, SUM(revenue) AS revenue
FROM orders
WHERE order_date >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY channel
HAVING SUM(revenue) > 1000
ORDER BY revenue DESC;ตรวจสอบความเข้าใจ
คุณต้องการเฉพาะกลุ่มแคมเปญที่มีคำสั่งซื้อมากกว่า 50 รายการ ส่วนคำสั่งใดใช้กรองกลุ่มที่ผ่านการรวมค่าแล้ว
ทบทวน
SELECT เลือกคอลัมน์ WHERE กรองแถว GROUP BY แบ่งกลุ่ม HAVING กรองกลุ่ม และ ORDER BY ร่วมกับ LIMIT กำหนดรูปแบบผลลัพธ์
ด้วยการรวมค่าแบบมีเงื่อนไข คุณคำนวณตัวชี้วัดหลายรายการได้ในการประมวลผลรอบเดียว ขั้นถัดไป: รวมข้อมูลจากหลายตารางด้วย JOIN
เรียนรู้ Digital Marketing Academy ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 63
- บทเรียน
- 239
คำถามที่พบบ่อย
บทเรียน “SELECT, WHERE, GROUP BY” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “SELECT, WHERE, GROUP BY” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Digital Marketing Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Digital Marketing Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “SELECT, WHERE, GROUP BY”
รวมข้อมูลแคมเปญ คุณปฏิบัติ Digital Marketing Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Digital Marketing Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Digital Marketing Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “SELECT, WHERE, GROUP BY” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Digital Marketing Academy นี้ได้ไหม
ได้ บทเรียน Digital Marketing Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เหตุผลที่นักการตลาดเรียน SQL
- SELECT, WHERE, GROUP BY
- การรวมตารางการตลาด
- คิวรีกลุ่ม Cohort และกรวย