การเลือกข้อมูลในช่วงเงื่อนไขหลายอย่าง (Range + Boolean) ใช้ WHERE รวมเงื่อนไขด้วย AND/OR และออเปอเรเตอร์เปรียบเทียบ
สร้างตารางลูกค้า
mysql> create table DemoTable (
CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
CustomerName varchar(200),
CustomerAge int,
isRegularCustomer bool
);
เพิ่มข้อมูล 6 ราย
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer) values
('Chris',24,true),('Robert',26,false),('Mike',27,false),
('Larry',22,true),('Sam',30,true),('Carol',26,true);
ข้อมูลในตาราง
+------------+--------------+-------------+-------------------+ | CustomerId | CustomerName | CustomerAge | isRegularCustomer | +------------+--------------+-------------+-------------------+ | 1 | Chris | 24 | 1 | | 2 | Robert | 26 | 0 | | 3 | Mike | 27 | 0 | | 4 | Larry | 22 | 1 | | 5 | Sam | 30 | 1 | | 6 | Carol | 26 | 1 | +------------+--------------+-------------+-------------------+
คำสั่ง: อายุ 24-27 และเป็น Regular Customer
mysql> select CustomerId, CustomerName, CustomerAge, isRegularCustomer from DemoTable where isRegularCustomer = true AND CustomerAge >= 24 AND CustomerAge <= 27;
ผลลัพธ์
+------------+--------------+-------------+-------------------+ | CustomerId | CustomerName | CustomerAge | isRegularCustomer | +------------+--------------+-------------+-------------------+ | 1 | Chris | 24 | 1 | | 6 | Carol | 26 | 1 | +------------+--------------+-------------+-------------------+
Operator เปรียบเทียบ
| Operator | ความหมาย | ตัวอย่าง |
|---|---|---|
| = | เท่ากับ | age = 25 |
| <> / != | ไม่เท่ากับ | age <> 25 |
| > | มากกว่า | age > 25 |
| >= | มากกว่าหรือเท่ากับ | age >= 25 |
| < | น้อยกว่า | age < 25 |
| <= | น้อยกว่าหรือเท่ากับ | age <= 25 |
| BETWEEN | ในช่วง (Inclusive) | age BETWEEN 24 AND 27 |
| IN | อยู่ในรายการ | age IN (24,25,26) |