มีหลายสิ่งที่คุณสามารถทำได้เพื่อกำหนดคิวรีใน SQL สิ่งหนึ่งที่คุณสามารถทำได้กับส่วนคำสั่ง WHERE คือการตรวจสอบเพื่อดูว่ามีแถวที่มีพารามิเตอร์ที่ตรงกันในฐานข้อมูลหรือไม่ เราทำสิ่งนี้ด้วยตัวดำเนินการ EXISTS
ไวยากรณ์มีดังนี้:
SELECT <Column>)FromTable1> FROM <Table 1 Name> WHERE EXISTS (SELECT <Column> FROM <Table 2 Name> WHERE <Table 2 Primary Key> = <Table 1 Primary Key> AND <Another Column From Table 2> = <someConstraint>);
เงื่อนไข EXISTS ของ SQL จะส่งกลับชื่อคอลัมน์เดิมที่เลือกไว้บนแถวที่เคียวรีย่อย EXISTS ในวงเล็บเป็นจริง ในตัวอย่างนี้จาก W3Schools เราเลือกชื่อซัพพลายเออร์จากแบบสอบถามภายนอกที่คืนค่าจริงเมื่อแบบสอบถามย่อยส่งคำสั่งย่อย EXISTS
SELECT SupplierName FROM Suppliers WHERE EXISTS (SELECT ProductName FROM Products WHERE Products.SupplierID = Suppliers.supplierID AND Price < 20);
SQL EXISTS ทำหน้าที่เป็นตัวกรองประเภทหนึ่ง โดยข้อมูลที่ส่งคืนเท่านั้นคือคอลัมน์ที่เราเลือกจากตารางแรก ลองใช้ตัวดำเนินการ SQL และคำสั่งแบบสอบถามอื่นๆ ในสภาพแวดล้อมแซนด์บ็อกซ์บน W3Schools มันจะช่วยให้คุณยกระดับทักษะการเขียนแบบสอบถามของคุณได้อย่างแน่นอน!