(NOT) BETWEEN 運算子 (SQL (NOT) BETWEEN Operator)
不同於 IN 運算子是依不連續的值作為 WHERE 查詢子句的篩選條件,BETWEEN 則是用來限定依某範圍內連續的值作為條件來搜尋資料表中的特定資料。作為查詢範圍條件的欄位型態可為數值、日期或字串,其中字串是依照字母排列順序來界定範圍。
BETWEEN 語法 (SQL BETWEEN Syntax)
SELECT table_column1, table_column2, table_column3··· FROM table_name WHERE column_name BETWEEN value1 AND value2;
BETWEEN 運算子查詢實例 (Example)
假設我們想從下面的「customers」資料表中查詢訂單數量介於1000~4000的顧客資料:| C_Id | Name | City | Address | Phone | Quantity |
|---|---|---|---|---|---|
| 1 | 張一 | 台北市 | XX路100號 | 02-12345678 | 1000 |
| 2 | 王二 | 新竹縣 | YY路200號 | 03-12345678 | 3000 |
| 3 | 李三 | 高雄縣 | ZZ路300號 | 07-12345678 | 5000 |
我們可以這樣作 SQL 查詢:
SELECT * FROM customers WHERE Quantity BWTWEEN 1000 AND 4000;
查詢後返回的結果會是:
| C_Id | Name | City | Address | Phone | Quantity |
|---|---|---|---|---|---|
| 1 | 張一 | 台北市 | XX路100號 | 02-12345678 | 1000 |
| 2 | 王二 | 新竹縣 | YY路200號 | 03-12345678 | 3000 |
NOT BWTWEEN
相反的,NOT BWTWEEN 就是不包含在這範圍裡的的資料我通通要了,如上例多加上 NOT:SELECT * FROM customers WHERE Quantity NOT BWTWEEN 1000 AND 4000;
查詢後返回的結果會是:
| C_Id | Name | City | Address | Phone | Quantity |
|---|---|---|---|---|---|
| 3 | 李三 | 高雄縣 | ZZ路300號 | 07-12345678 | 5000 |