MySQL between 操作符
时间:2019-02-04 12:52:25 来源:igfitidea点击:
MySQL BETWEEN 操作符用于在SELECT,INSERT,UPDATE或DELETE语句中检索某个范围内的值。
语法
MySQL中BETWEEN条件的语法为:
expression BETWEEN value1 AND value2;
参数 | 说明 |
---|---|
expression | 要检测的值(列或者计算值) |
value1,value2 | 这些值创建一个包含范围。expression将与之进行比较的 |
说明
MySQL BETWEEN条件将返回expression值在value1和value2(包括)范围内的记录。
如果用 MySQL BETWEEN 来比较日期,那么需要确保已使用CAST函数将值转换为日期。
MySQL between 操作符示例
示例-使用 mysql between 来比较数字
下面的示例将使用BETWEEN来检索数字范围内的值。
SELECT * FROM contacts WHERE contact_id BETWEEN 100 AND 200;
这个示例将返回contacts表中所有contact_id在100到200之间(包括200和200)的行。
它等效于以下SELECT语句:
SELECT * FROM contacts WHERE contact_id >= 100 AND contact_id <= 200;
示例-使用 mysql between 来比较日期
将MySQL BETWEEN与Dates一起使用。需要使用CAST函数将值显式转换为日期。
SELECT * FROM order_details WHERE order_date BETWEEN CAST('2017-05-02' AS DATE) AND CAST('2018-01-18' AS DATE);
该示例将返回order_details表中所有order_date满足条件的记录。
它等效于以下SELECT语句:
SELECT * FROM order_details WHERE order_date >= CAST('2017-05-02' AS DATE) AND order_date <= CAST('2018-01-18' AS DATE);
示例-NOT 和between 一起使用
MySQL BETWEEN运算符也可以与NOT运算符结合使用。 表示取BETWEEN AND 范围的补集。
SELECT * FROM suppliers WHERE supplier_id NOT BETWEEN 2000 AND 2999;
将从供应商表中返回所有供应商编号不在2000到2999(包含)之间的行。
它等同于以下SELECT语句:
SELECT * FROM suppliers WHERE supplier_id < 2000 OR supplier_id > 2999;