news 2026/4/16 9:17:36

SQL BETWEEN 操作符

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL BETWEEN 操作符

SQL BETWEEN 操作符


BETWEEN 操作符选取介于两个值之间的数据范围内的值,这些值可以是数值、文本或者日期。

SQL BETWEEN 语法

SELECT column1, column2, ... FROM table_name WHERE column BETWEEN value1 AND value2;

参数说明:

  • column1, column2, ...:要选择的字段名称,可以为多个字段。如果不指定字段名称,则会选择所有字段。
  • table_name:要查询的表名称。
  • column:要查询的字段名称。
  • value1:范围的起始值。
  • value2:范围的结束值。

演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "Websites" 表的数据:

mysql> SELECT * FROM Websites; +----+---------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+---------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 菜鸟教程 | http://www.runoob.com/ | 5000 | USA | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | | 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND | +----+---------------+---------------------------+-------+---------+

BETWEEN 操作符实例

下面的 SQL 语句选取 alexa 介于 1 和 20 之间的所有网站:

实例

SELECT * FROM Websites
WHERE alexa BETWEEN 1 AND 20;

执行输出结果:


NOT BETWEEN 操作符实例

如需显示不在上面实例范围内的网站,请使用 NOT BETWEEN:

实例

SELECT * FROM Websites
WHERE alexa NOT BETWEEN 1 AND 20;

执行输出结果:


带有 IN 的 BETWEEN 操作符实例

下面的 SQL 语句选取 alexa 介于 1 和 20 之间但 country 不为 USA 和 IND 的所有网站:

实例

SELECT * FROM Websites
WHERE (alexa BETWEEN 1 AND 20)
AND country NOT IN ('USA', 'IND');

执行输出结果:


带有文本值的 BETWEEN 操作符实例

下面的 SQL 语句选取 name 以介于 'A' 和 'H' 之间字母开始的所有网站:

实例

SELECT * FROM Websites
WHERE name BETWEEN 'A' AND 'H';

执行输出结果:


带有文本值的 NOT BETWEEN 操作符实例

下面的 SQL 语句选取 name 不介于 'A' 和 'H' 之间字母开始的所有网站:

实例

SELECT * FROM Websites
WHERE name NOT BETWEEN 'A' AND 'H';

执行输出结果:


示例表

下面是 "access_log" 网站访问记录表的数据,其中:

  • aid:为自增 id。
  • site_id:为对应 websites表的网站 id。
  • count:访问次数。
  • date:为访问日期。
mysql> SELECT * FROM access_log; +-----+---------+-------+------------+ | aid | site_id | count | date | +-----+---------+-------+------------+ | 1 | 1 | 45 | 2016-05-10 | | 2 | 3 | 100 | 2016-05-13 | | 3 | 1 | 230 | 2016-05-14 | | 4 | 2 | 10 | 2016-05-14 | | 5 | 5 | 205 | 2016-05-14 | | 6 | 4 | 13 | 2016-05-15 | | 7 | 3 | 220 | 2016-05-15 | | 8 | 5 | 545 | 2016-05-16 | | 9 | 3 | 201 | 2016-05-17 | +-----+---------+-------+------------+ 9 rows in set (0.00 sec)

本教程使用到的 access_log 表 SQL 文件:access_log.sql。


带有日期值的 BETWEEN 操作符实例

下面的 SQL 语句选取 date 介于 '2016-05-10' 和 '2016-05-14' 之间的所有访问记录:

实例

SELECT * FROM access_log
WHERE date BETWEEN '2016-05-10' AND '2016-05-14';

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 3:21:45

LangFlow园艺种植计划制定助手

LangFlow园艺种植计划制定助手 在智能农业的探索浪潮中,一个现实问题始终困扰着从业者:如何将分散在农技手册、科研论文和专家经验中的知识,转化为普通种植户也能轻松获取的个性化建议?传统信息系统往往依赖静态规则库&#xff0c…

作者头像 李华
网站建设 2026/4/15 10:34:54

图解说明Altium Designer高速信号回流路径设计

高速PCB设计的隐形脊梁:用Altium Designer搞定信号回流路径你有没有遇到过这样的情况?电路原理图完全正确,所有网络都连通了,电源也稳定,可一上电——眼图闭合、串扰严重、EMC测试超标,系统时而复位、时而误…

作者头像 李华
网站建设 2026/4/13 20:07:41

LangFlow新闻摘要自动生成系统工作流设计

LangFlow新闻摘要自动生成系统工作流设计 在信息爆炸的时代,每天产生的新闻内容浩如烟海。媒体机构、企业舆情部门甚至个人用户都面临一个共同挑战:如何从海量文本中快速提取关键信息?传统的手动摘要耗时费力,而基于规则的自动化工…

作者头像 李华
网站建设 2026/4/11 4:34:09

移动零元素

移动零元素 给定一个名为 nums 的数字数组,创建一个函数,将数组中的所有零元素移动到数组末尾,同时保持非零元素的原有顺序。 此操作需要在原数组上进行,不能创建原数组的副本。 /*** Move all zeros to the end of the array whi…

作者头像 李华
网站建设 2026/4/12 2:13:18

动态数据刷新机制实现:上位机软件开发实战案例

动态数据刷新实战:如何让上位机界面“跟得上”高速采集?你有没有遇到过这样的场景?开发一个工业数据监控软件,下位机每10毫秒就发来一组传感器读数。可你在界面上看到的波形却像卡顿的老电影——跳帧、延迟、甚至偶尔还抽搐一下。…

作者头像 李华
网站建设 2026/4/14 10:20:04

.NET+AI | Agent | Agent as Function (14)

Agent 转换为工具:实现 Agent 嵌套调用一句话简介MAF 提供两种方式将 Agent 转换为可复用工具:AsAIFunction() 用于应用内嵌套,MCP 工具用于跨平台互操作。🎯 核心价值✅ 复用性:将 Agent 封装为工具,在不同…

作者头像 李华