sql command

Database SQL – Where Clause

ต่อเนื่องจากที่เราสามารถดึงข้อมูลใน table ด้วย SQL Select statement ได้เรียบร้อยแล้ว ทีนี้เราดูวิธีการสร้างเงือนไข ในกรณีที่ข้อมูลใน table มีจำนวนมาก และเราต้องการข้อมูลเฉพาะแถวที่เราต้องการตามเงือนไข เราจะเพิ่มส่วนของ SQL Where Clause statement เข้ามาช่วยในการทำ select ข้อมูลจาก table หลักการของ Where Clause ก็คือการนำเอา SQL Operator และตัวแปรมาสร้างเป็น SQL Expression ในรูปแบบ condition

ไม่เพียงแค่ SQL Select statement เท่านั้นที่สามารถใช้เงื่อนไข Where Clause ได้ การลบข้อมูล หรือ Delete statement รวมถึงการเปลี่ยนแปลงข้อมูล หรือ Update statement ก็สามารถใช้ Where Clause มาช่วยได้ด้วยเช่นกัน

 

รูปแบบ (Syntax)

SQL Select statement เราสามารถนำเอา Where condition เพิ่มต่อเข้าไปได้เลย เพื่อให้ข้อมูลที่แสดงถูกกรองให้เหลือเฉพาะข้อมูลที่อยู่ในเงือนไขที่ต้องการ

SELECT column1, column2, columnN 
FROM table_name
WHERE [condition]

ในส่วนของ condition เราสามารถนำเอา SQL Operator เช่น =, >, <, LIKE, NOT มาสร้างเป็น SQL Expression เพื่อเปรียบเทียบข้อมูลใน table และ ข้อมูลที่เราต้องการ

 

 

ตัวอย่างการแสดงข้อมูลใน 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 |
+----+----------+-----+-----------+----------+

 

เราสามารถใช้ Where Condition เพิ่มเข้ามาต่อจาก SQL Select statment ปกติได้เลย เช่นเราต้องการดึงข้อมูล column ID, NAME, SALARY จาก table CUSTOMERS ที่มีเงือนไขว่า SALARY ต้องมากกว่า 2,000 ขึ้นไป

SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE SALARY > 2000;

 

 

ผลลัพธ์ที่ได้ มีด้วยกัน 4 แถวที่ SALARY > 2000

+----+----------+----------+
| ID | NAME     | SALARY   |
+----+----------+----------+
|  4 | Chaitali |  6500.00 |
|  5 | Hardik   |  8500.00 |
|  6 | Komal    |  4500.00 |
|  7 | Muffy    | 10000.00 |
+----+----------+----------+

 

สำหรับข้อมูล column ที่มี data type แบบตัวอักษร หรือ text เราจำเป็นต้องใส่ keyword single quote (‘ text’) ข้างหน้าและข้างหลังของคำนั้นด้วย เพื่อบ่งบอกให้ SQL ทราบว่าข้อมูลต่อไปนี้เป็นข้อมูลชนิดตัวอักษร ไม่ใช่ keyword SQL

SQL> SELECT ID, NAME, SALARY 
FROM CUSTOMERS
WHERE NAME = 'Hardik';

 

ผลลัพธ์ที่ได้

+----+----------+----------+
| ID | NAME     | SALARY   |
+----+----------+----------+
|  5 | Hardik   |  8500.00 |
+----+----------+----------+

 

 

Reference:

รวมคำสั่ง SQL Command พื้นฐานเบื้องต้น

Database, Oracle, MySQL

 

 

Author: Suphakit Annoppornchai

Credit: https://saixiii.com, https://www.tutorialspoint.com

6 Thoughts to “Database SQL – Where Clause คือ การสร้างเงื่อนไขเพื่อเลือกข้อมูลที่ต้องการ”

  1. […] เราสามารถใช้ Where Clause statement ในการเชื่อมด้วยเงื่อนไข column […]

  2. […] SQL Select ที่ดึงข้อมูลด้วย Where Clause สามารถทำได้รวดเร็วขึ้น […]

  3. […] SQL Where Clause ได้อีกรอบแล้ว เราต้องใช้คำสั่ง SQL […]

  4. […] จากบทความเรื่อง SQL LIKE Clause เราจะเห็นว่านอกจาก operator LIKE แล้วยังมีส่วนที่ต้องระบุเงือนไขค่าคงที่ ที่จะนำมาเปรียบเทียบด้วย ซึ่งเกือบทั้งหมดจะต้องมีการใช้งาน SQL Wildcard Operator รวมอยู่ในค่าคงที่นั้น เพื่อเติมเต็มเงือนไขให้สมบูรณ์ภายใต้ SQL Where Clause […]

  5. […] ซึ่งการทำ subquery สามารถใช้งาน Where Clause ไม่ว่าจะเป็น main query หรือ ส่วนของ subquery […]

Leave a Reply