รู้จัก SQL และฐานข้อมูลเชิงสัมพันธ์
SQL คือภาษาที่ใช้จัดการข้อมูลในฐานข้อมูลเชิงสัมพันธ์ เช่น PostgreSQL, MySQL, SQLite, SQL Server และ BigQuery ในงานข้อมูล SQL เป็นทักษะพื้นฐานที่ใช้ดึงข้อมูล ตรวจสอบข้อมูล และสร้างรายงาน
ฐานข้อมูลเชิงสัมพันธ์คืออะไร
ฐานข้อมูลเชิงสัมพันธ์เก็บข้อมูลเป็น table แต่ละ table มี row และ column
ตัวอย่าง table customers
| customer_id | name | country |
|---|---|---|
| 1 | Ann | Thailand |
| 2 | Bob | Singapore |
ตัวอย่าง table orders
| order_id | customer_id | amount |
|---|---|---|
| 101 | 1 | 1200 |
| 102 | 2 | 850 |
ความสัมพันธ์เกิดจาก column ที่เชื่อมกัน เช่น orders.customer_id อ้างถึง customers.customer_id
SQL ใช้ทำอะไร
- ดึงข้อมูลด้วย
SELECT - กรองข้อมูลด้วย
WHERE - เรียงข้อมูลด้วย
ORDER BY - สรุปข้อมูลด้วย
GROUP BY - เชื่อม table ด้วย
JOIN - เพิ่ม แก้ไข ลบข้อมูล
- ออกแบบ table และ constraint
รูปแบบคำสั่ง SQL
SELECT column_name
FROM table_name
WHERE condition;
SQL ไม่บังคับตัวพิมพ์ใหญ่เล็ก แต่ convention ที่นิยมคือ keyword ใช้ตัวพิมพ์ใหญ่ เพื่อให้อ่านง่าย
Mental Model สำคัญ
เวลาคิด SQL ให้ถามตามลำดับ
- ต้องการข้อมูลจาก table ไหน
- ต้องการ column อะไร
- ต้องกรอง row อย่างไร
- ต้องรวมกลุ่มหรือเชื่อม table ไหม
- ต้องเรียงผลลัพธ์อย่างไร
แบบฝึกหัด
จาก table orders ที่มี column order_id, customer_id, amount, order_date
- ระบุว่า column ไหนควรเป็น primary key
- ระบุว่า column ไหนใช้เชื่อมกับ table
customers - เขียนคำอธิบายว่าอยากรู้ insight อะไรจาก table นี้ 3 ข้อ