การดึงข้อมูลด้วย Query SQL: แนะนำคำชี้แจงสิทธิ์ SELECT

Structured Query Language ให้ ผู้ใช้ฐานข้อมูลมีกลไกการดึงข้อมูลที่มีประสิทธิภาพและยืดหยุ่น - คำสั่ง SELECT ในบทความนี้เราจะดูรูปแบบทั่วไปของคำสั่ง SELECT และสร้างแบบสอบถามฐานข้อมูลตัวอย่างบางส่วนด้วยกัน หากนี่เป็นครั้งแรกที่คุณเข้าสู่โลกของ Structured Query Language คุณอาจต้องการอ่านบทความ พื้นฐานของ SQL ก่อนดำเนินการต่อ

หากคุณต้องการออกแบบฐานข้อมูลใหม่ตั้งแต่เริ่มต้นบทความ การสร้างฐานข้อมูลและตารางใน SQL ควรพิสูจน์จุดดีๆในการกระโดดออก

ตอนนี้คุณได้เริ่มต้นทำความเข้าใจกับคำสั่ง SELECT แล้ว เช่นเดียวกับบทเรียน SQL ก่อนหน้าเราจะใช้คำสั่งที่สอดคล้องกับมาตรฐาน ANSI SQL ต่อไป คุณอาจต้องการดูเอกสารสำหรับ DBMS ของคุณเพื่อพิจารณาว่าจะสนับสนุนตัวเลือกขั้นสูงที่อาจเพิ่มประสิทธิภาพและ / หรือประสิทธิภาพของรหัส SQL ของคุณหรือไม่

แบบฟอร์มทั่วไปของคำชี้แจงสิทธิ์ SELECT

รูปแบบทั่วไปของคำสั่ง SELECT ปรากฏด้านล่าง:

SELECT select_list
FROM source
WHERE เงื่อนไข
นิพจน์ GROUP BY
มี สภาพ
ORDER BY แสดงออก

บรรทัดแรกของคำสั่งบอกโปรเซสเซอร์ SQL ว่าคำสั่งนี้เป็นคำสั่ง SELECT และเราต้องการดึงข้อมูลจากฐานข้อมูล select_list ช่วยให้เราสามารถระบุชนิดของข้อมูลที่เราต้องการเรียกคืน

คำสั่ง FROM ในบรรทัดที่สองระบุตารางฐานข้อมูลที่เฉพาะเจาะจงที่เกี่ยวข้องและ คำสั่ง WHERE ช่วยให้เราสามารถ จำกัด ผลลัพธ์ให้กับระเบียนเหล่านั้นที่ตรงกับ เงื่อนไขที่ ระบุ ประโยคสามข้อสุดท้ายแสดงถึงคุณลักษณะขั้นสูงที่อยู่นอกขอบเขตของบทความนี้เราจะสำรวจในบทความ SQL ในอนาคต

วิธีที่ง่ายที่สุดในการเรียนรู้ SQL คือตัวอย่าง เมื่อพิจารณาแล้วเรามาดูการสืบค้นฐานข้อมูลบางอย่าง ตลอดบทความนี้เราจะใช้ตารางพนักงานจากฐานข้อมูลทรัพยากรมนุษย์ของ XYZ Corporation เพื่อแสดงตัวอย่างคำถามทั้งหมดของเรา นี่คือตารางทั้งหมด:

EmployeeID

นามสกุล

ชื่อจริง

เงินเดือน

รายงานถึง

1

ช่างเหล็ก

จอห์น

32000

2

2

Scampi

ฟ้อง

45000

โมฆะ

3

เคนดอล

ทอม

29500

2

4 โจนส์ อับราฮัม 35000 2
5 อัลเลน บิล 17250 4
6 นาดส์ แอลลิสัน 19500 4
7 จอห์นสัน เคธี่ 21000 3

เรียกดูตารางทั้งหมด

ผู้อำนวยการฝ่ายทรัพยากรบุคคลของ XYZ Corporation ได้รับรายงานประจำเดือนโดยระบุข้อมูลเงินเดือนและการรายงานข้อมูลสำหรับพนักงานแต่ละคน การสร้างรายงานนี้เป็นตัวอย่างของแบบฟอร์มที่ง่ายที่สุดของคำสั่ง SELECT เพียงดึงข้อมูลทั้งหมดที่อยู่ภายในตารางฐานข้อมูล - ทุกคอลัมน์และทุกแถว ต่อไปนี้เป็นแบบสอบถามที่จะทำให้ผลลัพธ์นี้:

เลือก *
จากพนักงาน

สวยตรงไปตรงมาใช่มั้ย? เครื่องหมายดอกจัน (*) ที่ปรากฏอยู่ใน select_list เป็นสัญลักษณ์แทนที่ใช้เพื่อแจ้งฐานข้อมูลที่เราต้องการจะดึงข้อมูลจากคอลัมน์ทั้งหมดในตารางของพนักงานที่ระบุไว้ในคำสั่ง FROM เราต้องการเรียกข้อมูลทั้งหมดในฐานข้อมูลดังนั้นจึงไม่จำเป็นต้องใช้คำสั่ง WHERE เพื่อ จำกัด แถวที่เลือกจากตาราง

นี่คือสิ่งที่ผลการค้นหาของเรามีลักษณะดังนี้:

EmployeeID นามสกุล ชื่อจริง เงินเดือน รายงานถึง
---------- -------- --------- ------ ---------
1 ช่างเหล็ก จอห์น 32000 2
2 Scampi ฟ้อง 45000 โมฆะ
3 เคนดอล ทอม 29500 2
4 โจนส์ อับราฮัม 35000 2
5 อัลเลน บิล 17250 4
6 นาดส์ แอลลิสัน 19500 4
7 จอห์นสัน เคธี่ 21000 3