選擇 BETWEEN
你可以使用 BETWEEN 子句替換大於等於且小於等於條件的組合。
資料
+----+-----------+
| `id` | username |
+----+-----------+
| 1 | admin |
| 2 | root |
| 3 | toor |
| 4 | mysql |
| 5 | thanks |
| 6 | java |
+----+-----------+
查詢運算子
SELECT * FROM stack WHERE id >= 2 and id <= 5;
與 BETWEEN 類似的查詢
SELECT * FROM stack WHERE id BETWEEN 2 and 5;
結果
+----+-----------+
| `id` | username |
+----+-----------+
| 2 | root |
| 3 | toor |
| 4 | mysql |
| 5 | thanks |
+----+-----------+
4 rows in set (0.00 sec)
注意
BETWEEN 使用
>=
和<=
,而不是>
和<
。
使用 NOT BETWEEN
如果你想使用負片你可以使用 NOT
。例如 :
SELECT * FROM stack WHERE id NOT BETWEEN 2 and 5;
結果
+----+-----------+
| `id` | username |
+----+-----------+
| 1 | admin |
| 6 | java |
+----+-----------+
2 rows in set (0.00 sec)
注意
不能使用
>
和<
而不是>=
和<=
也就是說,WHERE id NOT BETWEEN 2 and 5
與WHERE (id < 2 OR id > 5)
相同。
如果你在 BETWEEN
搜尋中使用的列上有索引,MySQL 可以使用該索引進行範圍掃描。