当前位置: 首页 > web >正文

GaussDB between的用法


1 between的作用


between 操作符用于选取介于两个值之间的数据范围内的值。


2 between的边界


betweenN运算符选择给定范围内的值。值可以是数字,文本或日期。
between运算符是包含性的:包括开始和结束值,等价于>= AND <=


3 between的语法


SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;

4 示例数据库

以下是"Products"表中的数据:create table products(id int not null,name varchar(20) null,supplier_id int null,catalog_id int null,specification varchar(50) null,price numeric(18, 2) null
);insert into products (id,name,supplier_id,catalog_id,specification,price)
values
( 1, '面包', 1, 1, '10个/袋', 18.00 ), 
( 2, '大米', 1, 1, '25kg/袋', 75.00 ), 
( 3, '苹果', 1, 2, '10kg/箱', 50.00 ), 
( 4, '香蕉', 2, 2, '10kg/箱', 45.00 ), 
( 5, '雪梨', 2, 2, '10kg/箱', 60.00 );

5 between 使用举例


以下sql语句选择价格在30到60之间的所有产品:

select * from products where price between 30 and 60;


结果:

可以看到 价格 那一列的数据都是介于30(包含)和60(包含)之间的

6 not between 实例


要显示前面示例范围之外的产品,请使用not between:

select * from products where price not between 30 and 60; 
或 
select * from products where not price between 30 and 60;

结果:

7 带有 in 的 between 操作符实例


以下SQL语句选择价格在10到60之间但名称不是大米和香蕉的所有产品:

select * from products where (price between 10 and 60) and name not in ('大米','香蕉');


因为大米和香蕉都是字符类型,所以要用单引号('')
结果:

可以看到价格一列均满足10 到 60 之间,名称一列香蕉 ( 的价格本来也符合,但是因为我们用 not in 把他排除了,所以也不显示出来。

8 带有文本值的 BETWEEN 操作符举例


以下SQL语句选择所有带有名称 BETWEEN'面包'和'香蕉'的产品:

select * from products where name between '面包' and '香蕉';


结果:

9 带有日期值的 BETWEEN 操作符举例


以下 SQL 语句选取 订单日期 介于 '2018-06-28' 和 '2018-09-28' 之间的所有订单:

select * from orders where order_date between timestamp '2018-06-28 00:00:00' and  timestamp '2018-09-28 00:00:00';

结果:

注:

between and在处理日期可能会有你意向不到的结果,SQL中 between and是包括边界值的,not between不包括边界值,不过如果使用between and 限定日期需要注意,如果and后的日期是到天的,那么默认为00:00:00 例如:and 后的日期为2018年09月28日,就等价于2018-09-28 00:00:00 ,那么2018-09-28 11:24:54.000的数据就查不到了,如果要查到2018-09-28这一整天的数据,那么在取值的时候需要加1天,即between '2018-06-28' AND '2018-09-29',这样返回的就是6月28日(含)到9月28日(含)的所有数据了。

http://www.xdnf.cn/news/15518.html

相关文章:

  • 文心一言 4.5 开源深度剖析:中文霸主登场,开源引擎重塑大模型生态
  • 用基础模型构建应用(第九章)AI Engineering: Building Applications with Foundation Models学习笔记
  • # 检测 COM 服务器在线状态
  • python 双下划线开头函数
  • 网络协议和基础通信原理
  • Go泛型完全指南:从基础到实战应用
  • Fluent许可文件安装和配置
  • 车载诊断框架 --- 车载诊断GuideLine
  • 如何集成光栅传感器到FPGA+ARM系统中?
  • 如何更改Blender插件安装位置呢?
  • qt 使用memcpy进行内存拷贝时注意的问题
  • 硬盘爆满不够用?这个免费神器帮你找回50GB硬盘空间
  • EasyExcel实现Excel文件导入导出
  • [Nagios Core] 事件调度 | 检查执行 | 插件与进程
  • 解决Qt中“known incorrect sRGB profile“警告的Photoshop修改方法
  • 如何基于FFMPEG 实现视频推拉流
  • DataWhale AI夏令营 Task2笔记
  • asyncio.Task` 的工作机制与高级应用
  • 嵌入式硬件篇---单稳态多谐施密特电路
  • 【WRFDA实操第一期】服务器中安装 WRFPLUS 和 WRFDA
  • 2025年睿抗机器人开发者大赛CAIP-编程技能赛本科组(省赛)解题报告 | 珂学家
  • Python `WeakValueDictionary` 用法详解
  • Kotlin委托
  • python的小学课外综合管理系统
  • MFC UI大小改变与自适应
  • ICMP隧道工具完全指南:原理、实战与防御策略
  • SwiftUI 全面介绍与使用指南
  • 【Docker基础】Dockerfile指令速览:健康检查与启动指令详解
  • Spark SQL 之 UT
  • Linux操作系统从入门到实战(七)详细讲解编辑器Vim