นิยามก่อน
SQL คืออะไร
SQL ใช้เขียนคำสั่งที่ชัดเจน ที่นี่เรียนเป็น เส้นทางฝึก SQL ตั้งแต่ศูนย์ เริ่มจากภาพเดียว input ผ่านขั้นตอนแล้วกลายเป็น output
ข้อมูลรันขั้นต่ำไฟล์ query.sqlรัน psql -f query.sqlนิสัย เรียน SQL ทีละส่วนเล็ก แล้วพิมพ์ตัวอย่างสั้นและรัน
โปรแกรมชุดคำสั่งที่ทำงานตามลำดับ
ค่าและตัวแปรค่าคือข้อมูล ตัวแปรคือชื่อที่เก็บข้อมูล
ฟังก์ชันงานย่อยที่มีชื่อ รับ input และสร้างผลลัพธ์
runtimePostgreSQL compatible SQL รันโค้ดจาก query.sql
โค้ดแรกที่อ่านง่าย
Select
columns table rowsSELECT name, score FROM users;
ผลลัพธ์ name score rowsดูว่า SQL มาจากไหน ใกล้กับภาษาใด และควรเรียนอะไรต่อ
รากrelational algebraSEQUEL
ปัจจุบันSQLตระกูลข้อมูลและคำนวณวิทยาศาสตร์ใกล้เคียง ตระกูลตระกูลข้อมูลและคำนวณวิทยาศาสตร์เหมาะกับเหมาะกับ เส้นทางฝึก SQL ตั้งแต่ศูนย์
ถัดไป เริ่มจากศูนย์
1อ่านกฎหนึ่งข้อ2ทายผลลัพธ์3พิมพ์จากความจำ4รันการตรวจ5ทำซ้ำโดยเปลี่ยนหนึ่งจุด
คลังคำถาม
ค้นหาก่อนฝึก
เลือกขั้นหรือค้นหาแบบฝึกของภาษานี้ แล้วเปิดข้อที่ต้องการทันที
18 รายการQ 1ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 1
SQL ข้อ 1 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
Q 2ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 2
SQL ข้อ 2 เลือกคำอธิบายที่ตรงกับ where filter ที่สุด
Q 3ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 3
SQL ข้อ 3 เลือกคำอธิบายที่ตรงกับ count aggregate ที่สุด
Q 4ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 4
SQL ข้อ 4 เลือกคำอธิบายที่ตรงกับ join tables ที่สุด
Q 5ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 5
SQL ข้อ 5 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
Q 6ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 6
SQL ข้อ 6 เลือกคำอธิบายที่ตรงกับ where filter ที่สุด
Q 7ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 7
SQL ข้อ 7 เลือกคำอธิบายที่ตรงกับ count aggregate ที่สุด
Q 8ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 8
SQL ข้อ 8 เลือกคำอธิบายที่ตรงกับ join tables ที่สุด
Q 9ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 9
SQL ข้อ 9 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
Q 10ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 10
SQL ข้อ 10 เลือกคำอธิบายที่ตรงกับ where filter ที่สุด
Q 11ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 11
SQL ข้อ 11 เลือกคำอธิบายที่ตรงกับ count aggregate ที่สุด
Q 12ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 12
SQL ข้อ 12 เลือกคำอธิบายที่ตรงกับ join tables ที่สุด
Q 13ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 13
SQL ข้อ 13 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
Q 14ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 14
SQL ข้อ 14 เลือกคำอธิบายที่ตรงกับ where filter ที่สุด
Q 15ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 15
SQL ข้อ 15 เลือกคำอธิบายที่ตรงกับ count aggregate ที่สุด
Q 16ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 16
SQL ข้อ 16 เลือกคำอธิบายที่ตรงกับ join tables ที่สุด
Q 17ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 17
SQL ข้อ 17 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
Q 18ตัวเลือกขั้น 1 นิยาม
SQL ข้อ 18
SQL ข้อ 18 เลือกคำอธิบายที่ตรงกับ where filter ที่สุด
ปรนัย
SQL ข้อ 1
Q 1ตัวเลือกใหม่
SQL ข้อ 1 เลือกคำอธิบายที่ตรงกับ select columns ที่สุด
SELECT name FROM users;
อ้างอิง
รูปแบบของ query.sql
PostgreSQL compatible SQLpsql -f query.sql
ทวนจากความจำอ่านจุดเล็กแล้วเขียนใหม่โดยไม่ดูไล่โค้ดเขียนค่าตัวแปรทีละบรรทัดก่อนรันพิมพ์เองคัดลอกให้น้อย พิมพ์ให้มาก แล้วแก้ error ทีละจุด columns table rows
Select
SELECT name, score FROM users;
- Select only needed columns
- Read from one table first
- Add limits while exploring
where order limit
Filter
SELECT name FROM users WHERE score >= 60;
- WHERE filters rows
- ORDER BY sorts
- LIMIT protects exploration
count sum avg group by
Group
SELECT role, COUNT(*) FROM users GROUP BY role;
- Aggregate after filtering
- Group by non aggregate columns
- Name metrics clearly