การ SELECT (ซีเล็คท์) ข้อมูลด้วย SELECT ซ้อน SELECT
เป็นการ SELECT ข้อมูลแบบซับซ้อนมากขึ้น หรือ ที่เรียกว่า SELECT ซ้อน SELECT
โดยจะมี Main (เมน) Query (คิวรี่)เป็นตัว SELECT หลัก เเล้วมี Subquery (ซับ คิวรี่) อยู่ภายใต้ Main Query
รูปแบบคำสั่ง
SELECT ชื่อคอลัมน์
FROM ชื่อตารางข้อมูล
WHERE เงื่อนไข
(SELECT ชื่อคอลัมน์
FROM ชื่อตารางข้อมูล
WHERE เงื่อนไข);
***การทำงานของ SELECT ซ้อน SELECT จะทำการประมวลจาก SELECT ย่อยก่อน
>>ต้องการทราบชื่อนักศึกษาที่มีอายุเท่ากับ 'เยาวภา'
ตัวอย่างการใช้งาน (แบบยังไม่ซ้อน SELECT)
-เราต้องทราบอายุของเยาวภาก่อน
SELECT Age
FROM Student
WHERE Student_Fname=‘เยาวภา';
การเเสดงผล
-เมื่อเราทราบผลเเล้วว่าเยาวภามีอายุ 21
SELECT Student_Fname, Student_Lname
FROM Student
WHERE Age=’21';
การเเสดงผล
จาก Code ข้างต้น
SELECT Age
FROM Student
WHERE Student_Fname=‘เยาวภา';
SELECT Student_Fname, Student_Lname
FROM Student
WHERE Age='21';
นำมาเขียนคำสั่งให้อยู่ในรูป SELECT ซ้อน SELECT ได้ดังนี้
SELECT Student_Fname, Student_Lname
FROM Student
WHERE Age=
(SELECT Age
FROM Student
WHERE Student_Fname=‘เยาวภา');
** จะเห็นว่าหากนำมาเขียนคำสั่งให้อยู่ในรูปแบบ SELECT ซ้อน SELECT จะนำเอาขั้นตอนที่ 1 มาเขียนอยู่ใน Subquery เพราะต้องดำเนินการก่อน
สามารถศึกษาเพิ่มเติมได้ที่ คำสั่ง MySQL ต่างๆ
โดย : http://www.mindphp.com