20 Advanced SQL Techniques
12-Jul-24
คัมภีร์เทพ IT
See the original english version Click here!
SQL เป็นเครื่องมือที่ทรงพลังสำหรับจัดการข้อมูลใน Relational Databases แม้ว่า SQL Queries พื้นฐาน จะมีความจำเป็น แต่การเรียนรู้ SQL Queries ขั้นสูง จะช่วยให้คุณสามารถทำงานที่ซับซ้อนได้มากขึ้น ในบทความนี้ เรามาดู 20 SQL Techniques ที่สามารถนำไปใช้ในการทำงานของคุณได้กัน
1. Subqueries
Subqueries ช่วยให้เราสามารถเขียน Query ซ้อนไว้ในอีก Query หนึ่งได้ มันยังช่วยให้สามารถดึงและกรองข้อมูล ที่ซับซ้อนมากขึ้นได้
ตัวอย่าง:
2. Joins
SQL Joins จะทำการรวม Rows จาก 2 Tables ขึ้นไป โดยยึดตาม Columns ที่เกี่ยวข้องระหว่าง Tables เหล่านั้น
ตัวอย่าง:
3. Aggregate Functions
Aggregate Functions จะทำการคำนวณชุดของ Values และ Return ค่ากลับมาให้ Value เดียว
ตัวอย่าง:
4. Window Functions
Window Functions จะทำงานบนชุดของ Rows ที่เกี่ยวข้องกับ Row ปัจจุบันภายใน Query Result
ตัวอย่าง:
5. Common Table Expressions (CTEs)
CTE เป็นชุด Results ชั่วคราวที่สามารถถูกอ้างอิงได้ภายในคำสั่ง SELECT, INSERT, UPDATE หรือ DELETE
ตัวอย่าง:
6. Pivot Tables
Pivot Tables จะช่วยจัดระเบียบข้อมูลจาก Rows เป็น Columns ใหม่
ตัวอย่าง:
7. Unions and Intersections
UNION จะรวมชุดผลลัพธ์ของคำสั่ง SELECT ตั้งแต่ 2 คำสั่งขึ้นไป ในขณะที่ INTERSECT จะ Return Rows ที่มีข้อมูลเหมือนกันระหว่าง Tables เหล่านั้น
ตัวอย่าง:
8. Case Statements
คำสั่ง CASE จะช่วยให้เราสามารถดำเนินการ Logic แบบมีเงื่อนไขภายในคำสั่ง SQL ได้ ซึ่งก็คล้ายกับคำสั่ง if-else ในภาษา Programming
ตัวอย่าง:
9. Recursive Queries
Recursive Queries จะช่วยให้สามารถดึงข้อมูลแบบ Hierarchical ได้ เช่น Organizational Structures หรือ Network Graphs
ตัวอย่าง:
10. Ranking Functions
Ranking Functions จะกำหนดอันดับให้กับแต่ละ Row ภายในชุด Results ตามเกณฑ์ที่ระบุไว้
ตัวอย่าง:
11. Data Modification Statements
SQL ไม่เพียงแต่ใช้ดึงข้อมูลเท่านั้น แต่ยังสามารถใช้แก้ไขข้อมูลได้อีกด้วย ไม่ว่าจะ คำสั่ง INSERT, UPDATE, DELETE ก็ล้วนใช้สำหรับการจัดการข้อมูล
ตัวอย่าง:
12. Temporary Tables
Temporary Tables ถูกสร้างและใช้งานในช่วงเวลาของ Session หรือ Transaction
ตัวอย่าง:
13. Grouping Sets
Grouping Sets จะช่วยให้เราสามารถกำหนด Grouping Sets หลาย ๆ ชุด ภายใน SQL Query เดียวได้
ตัวอย่าง:
14. Stored Procedures
Stored Procedures เป็น Precompiled SQL Statements ที่จัดเก็บไว้ใน Database เพื่อนำกลับมาใช้ซ้ำอีก
ตัวอย่าง:
15. Indexing
Indexes จะช่วยปรับปรุงความเร็วของการดำเนินการเรียกข้อมูล มันช่วยให้การเข้าถึง Rows ใน Table สามารถทำได้อย่างรวดเร็ว
ตัวอย่าง:
16. Materialized Views
Materialized Views จะจัดเก็บผลลัพธ์ของการ Query ไว้ ซึ่งจะช่วยให้สามารถเข้าถึงข้อมูลได้เร็วขึ้น
ตัวอย่าง:
17. Database Constraints
Constraints จะเป็นการบังคับใช้กฎเพื่อความสมบูรณ์ของข้อมูล เช่น Unique Keys, Foreign Keys และ Check Constraints
ตัวอย่าง:
18. Conditional Aggregation
Conditional Aggregation เป็นการแสดง Aggregate Functions ตามเงื่อนไขที่กำหนดไว้
ตัวอย่าง:
19. Window Frame Clauses
Window Frame Clauses จะระบุ Window ของ Rows ที่ใช้สำหรับการคำนวณใน Window Functions
ตัวอย่าง:
20. Dynamic SQL
Dynamic SQL จะช่วยให้สามารถสร้างและดำเนินการคำสั่ง SQL ขณะ Runtime ได้
ตัวอย่าง:
ที่มา: https://blog.stackademic.com/
รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert
อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ
บทความล่าสุด