Database SQL – And Or Clause
จากบทความที่แล้ว ที่เราใช้งานคำสั่ง SQL Select statement รวมถึงการเอา SQL Operator และตัวแปรมาสร้างเป็น SQL Expression เพื่อสร้างเป็น SQL Where Clause statement ทีนี้เราต่อที่การเงือนใขของ where clause ที่มากกว่า 1 เงือนไข โดยอาศัยการเชื่อมความสัมพันธ์ด้วย And & Or Clause ครับ ซึ่งเป็น SQL Operator อย่างหนึ่งเหมือนกัน
AND Operator
ใช้ทำการเชื่อมเงือนไข หลายๆเงือนไข ภายใต้ Where Clause statement
รูปแบบ (Syntax)
เราสามารถ เชื่อมหลายๆเงื่อนไขต่อกัน ด้วยการใช้ keyword “AND” นำหน้าแต่ละเงื่อนไขที่เพิ่มเข้ามา
SELECT column1, column2, columnN 
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
ภายใต้ Where condition ใน SQL Select statement ทุกเงือนไขที่เชื่อมกันด้วย And จำเป็นต้องได้ค่าเป็น TRUE ทั้งหมด Where Clause statement นั้นถึงจะเป็น TRUE ได้
ตัวอย่างการแสดงข้อมูลใน table
ตัวอย่างข้อมูลใน table CUSTOMERS
+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+
เราสามารถดึงข้อมูลจาก 2 เงื่อนไขที่ต้องเป็นจริงทั้งคู่ เช่น SALARY > 2000 และ age < 25
SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE SALARY > 2000 AND age < 25;
ผลลัพธ์ที่ได้ มีด้วยกัน 2 แถวที่ SALARY > 2000 และ age < 25
+----+-------+----------+
| ID | NAME  | SALARY   |
+----+-------+----------+
|  6 | Komal |  4500.00 |
|  7 | Muffy | 10000.00 |
+----+-------+----------+
OR Operator
ใช้ทำการเชื่อมเงือนไข หลายๆเงือนไข ภายใต้ Where Clause statement
รูปแบบ (Syntax)
เราสามารถ เชื่อมหลายๆเงื่อนไขต่อกัน ด้วยการใช้ keyword “OR” นำหน้าแต่ละเงื่อนไขที่เพิ่มเข้ามา
SELECT column1, column2, columnN 
FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN];
ภายใต้ Where condition ใน SQL Select statement ทุกเงือนไขที่เชื่อมกันด้วย Or มีอย่างน้อย 1 เงื่อนไขที่ได้ค่าเป็น TRUE ทั้งหมด Where Clause statement นั้นก็จะเป็น TRUE ได้ทันที
ตัวอย่างการแสดงข้อมูลใน table
ตัวอย่างข้อมูลใน table CUSTOMERS
+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+
เราสามารถดึงข้อมูลจาก 2 เงื่อนไขที่ต้องเป็นจริงทั้งคู่ เช่น SALARY > 2000 หรือ age < 25
SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE SALARY > 2000 OR age < 25;
ผลลัพธ์ที่ได้ มีด้วยกัน 5 แถวที่ SALARY > 2000 หรือ age < 25
+----+----------+----------+
| ID | NAME     | SALARY   |
+----+----------+----------+
|  3 | kaushik  |  2000.00 |
|  4 | Chaitali |  6500.00 |
|  5 | Hardik   |  8500.00 |
|  6 | Komal    |  4500.00 |
|  7 | Muffy    | 10000.00 |
+----+----------+----------+
Reference:
รวมคำสั่ง SQL Command พื้นฐานเบื้องต้น
Author: Suphakit Annoppornchai
Credit: https://saixiii.com, https://www.tutorialspoint.com


