你必须知道的一些 SELECT 查询 这篇文章讲述了一些最重要的查询以及提供了一些示例。今天我们继续这个主题,示范如何使用 BETWEEN 这个非常重要的运算符。
将值限制为某个范围
筛选查询返回行数的其中一种方法是将一个或多个字段的值限制为一个范围。通常,这可以使用 >= 和 <= 运算符来完成。举例说明,以下的查询返回 2005 年 7 月 5 日至 6 日期间的 Sakila 电影出租信息:
SELECT
customer_list.`name`,
rental.rental_date,
film.title
FROM
customer_list
INNER JOIN rental ON customer_list.ID = rental.customer_id
INNER JOIN film ON rental.inventory_id = film.film_id
WHERE
rental_date >= '2005-07-05' AND rental_date <= '2005-07-06'
与上述范围相同的更短且更易读的限制方法是使用 BETWEEN 运算符。BETWEEN 运算符用于选择特定范围内的值。定义为 BETWEEN 范围一部分的值是包含的,即范围中提到的起始值和结束值:
WHERE rental_date BETWEEN '2005-07-05' AND '2005-07-06'
在这两种情况,结果都受限于给定的日期范围:
name | rental_date | title |
---------------------------------------------------------------- | ||
JAIME NETTLES | 2005-07-05 22:49:24 | TEQUILA PAST |
PAMELA BAKER | 2005-07-05 22:56:33 | STAR OPERATION |
EDUARDO HIATT | 2005-07-05 22:59:53 | BRIDE INTRIGUE |
FERNANDO CHURCHILL | 2005-07-05 23:13:51 | BLADE POLISH |
CARMEN OWENS | 2005-07-05 23:25:54 | CANDLES GRAPES |
JOE GILLILAND | 2005-07-05 23:32:49 | TOURIST PELICAN |
APRIL BURNS | 2005-07-05 23:44:37 | WIZARD COLDBLOODED |
ERICA MATTHEWS | 2005-07-05 23:46:19 | JACKET FRISCO |
虽然 BETWEEN 运算符用于限制日期理想,同样适用于其他数据类型。例如对上述数据进行进一步过滤,将结果限制为租金介于 2.99 和 4.99 之间:
SELECT
customer_list.`name`,
rental.rental_date,
film.title,
film.rental_rate
FROM
customer_list
INNER JOIN rental ON customer_list.ID = rental.customer_id
INNER JOIN film ON rental.inventory_id = film.film_id
WHERE
rental.rental_date BETWEEN '2005-07-05' AND '2005-07-06'
AND film.rental_rate BETWEEN 2.99 AND 4.99
name | rental_date | title | rental_rate |
---------------------------------------------------------------------------------- | |||
JAIME NETTLES | 2005-07-05 22:49:24 | TEQUILA PAST | 4.99 |
PAMELA BAKER | 2005-07-05 22:56:33 | STAR OPERATION | 2.99 |
CARMEN OWENS | 2005-07-05 23:25:54 | CANDLES GRAPES | 4.99 |
JOE GILLILAND | 2005-07-05 23:32:49 | TOURIST PELICAN | 4.99 |
APRIL BURNS | 2005-07-05 23:44:37 | WIZARD COLDBLOODED | 4.99 |
ERICA MATTHEWS | 2005-07-05 23:46:19 | JACKET FRISCO | 2.99 |
总结
今天的文章介绍了 BETWEEN 这个非常重要的运算符,以及使用 Navicat Premium 作为数据库客户端的一些示例。Navicat 的代码补全和自定义的代码段功能透过关键字建议和减少重复输入相同的代码,令编码更加快速。你可以免费试用 14 天进行评估。