SQL SELECT Statement และลำดับการทำงานของ SQL SELECT Statement

6 ก.ค. 2016 , 6,793 Views   , หมวดหมู่ MySQL ทุกหมวดหมู่   ,


sql_select

Select <colum name>|*|<built-in fns>
From <table name>|<View name>
[Where <row conditions>]
[Group by <colum list>]
[Having <group conditions>]
[Order by <out put list>]

SQL Logical Execution Sequence ขั้นตอนการทำงานของ SQL ตามลำดับ

(1) From //โหลดทั้งตารางขึ้นมาเก็บอยู่ใน buffer ขนาดไม่จำกัด
(2) Where//เงื่อนไขบน row ไปเชค row แต่ละ row ตรวจสอบว่าสอดคล้องตามเงื่อนไขใน Where หรือไม่ ณ เวลาใดเวลาหนึ่ง colum name ใน where จะมีค่าๆเดียวเท่านั้น ซึ่งค่าดังกล่างคือค่า row ที่กำลังตรวจอยู่
(3) Group by//จัดเข้า Group โดยการ Sort ตาม Colum ที่ปรากฎใน Group by และ Grop เป็นกลุ่ม เพื่อนำไปใช้ และทำคำสั่งในแต่ละ Group เช่น นับแต่ละ Group ว่ามีกี่ Records
*ถ้าหากไม่มี Grouup by จะมองว่าทั้ง Table เป็น 1 Group
(4)Build-in fns //จะมี 5 ตัว AVG,SUM,MIN,MAX,Count
-AVG,SUM,MIN,MAX จะใช้กับ Colum (คำนวนจำนวนใน Colum)
-Count  จะใช้กับ Row (นับ Row)
-AVG,SUM ใช้กับ Colum ที่มีค่าเป็น numeric (ตัวเลขเท่านั้น)
-MIN,MAX ใช้กับ Colum ที่มีค่าเป็น alpha numeric (ตัวเลขก็ได้ตัวอักษรก็ได้)
(5)Having //เงื่อนไขบน Group by
(6) Order by//Sort Colum จะทำได้กับ Colum ที่เป็น Output