SQL 基础 | BETWEEN 的常见用法

在SQL中,BETWEEN是一个操作符,用于选取介于两个值之间的数据。

它包含这两个边界值。BETWEEN操作符常用于WHERE子句中,以便选取某个范围内的值。

以下是BETWEEN的一些常见用法:

  1. 选取介于两个值之间的值 : 使用 BETWEEN来选取列中的值,这些值大于或等于一个边界值,同时小于或等于另一个边界值。

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

例如,选取products表中价格介于10.00和20.00之间的所有产品:

复制代码
SELECT *
FROM products
WHERE price BETWEEN 10.00 AND 20.00;
  1. 选取日期范围内的记录BETWEEN也常用于选取特定日期范围内的记录。

    SELECT *
    FROM orders
    WHERE order_date BETWEEN '2024-01-01' AND '2024-01-31';

这将返回1月份的所有订单。

  1. **使用 NOT BETWEEN**: NOT BETWEEN操作符与 BETWEEN相反,它选取不在这个范围内的值。

    SELECT *
    FROM table_name
    WHERE column_name NOT BETWEEN value1 AND value2;

例如,选取employees表中工资不在5000到10000之间的员工:

复制代码
SELECT *
FROM employees
WHERE salary NOT BETWEEN 5000 AND 10000;
  1. 结合LIKE操作符使用BETWEEN可以与 LIKE操作符结合使用,以选取字符串中的一个范围。

    SELECT *
    FROM customers
    WHERE last_name BETWEEN 'A%' AND 'C%';

这个查询将选取姓以A、B或C开头的所有客户。

  1. 使用空值 : 如果 BETWEEN的任一端点是 NULL,则结果为假,因为 NULL不等同于任何值。

    SELECT *
    FROM table_name
    WHERE column_name BETWEEN value1 AND NULL;

这个查询不会返回任何行,因为没有任何列的值可以位于一个以NULL为上限的范围内。

  1. 在复杂表达式中使用BETWEEN也可以用于更复杂的表达式,包括函数和计算。

    SELECT *
    FROM sales
    WHERE (quantity * unit_price) BETWEEN 50 AND 200;

这将选取乘积在50到200之间的销售记录。

BETWEEN操作符是SQL中非常有用的工具,它允许你快速选取某个范围内的值。使用BETWEEN可以避免编写多个AND条件,使查询更加简洁。记住,BETWEEN操作符是包含性的,这意味着它包括指定的边界值。

-- END --

如果这篇文章为你带来了灵感或启发,就请帮忙点『赞』or『在看』or『转发』吧,感谢!(๑˃̵ᴗ˂̵)

本文由mdnice多平台发布

相关推荐
自由鬼10 天前
企业架构与IT架构关系的探讨
程序人生·安全·架构·安全架构·企业架构·it架构
ProcessOn官方账号11 天前
数据分析对比图表-雷达图全面指南
大数据·人工智能·程序人生·职场和发展·数据分析·学习方法·processon
南国_之恋12 天前
程序人生,人生如戏
程序人生·职场和发展
TGC达成共识13 天前
解锁身心密码:从“心”拥抱健康生活
科技·物联网·程序人生·百度·生活·新浪微博·高考
宇钶宇夕14 天前
博图SCL中CONTINUE语句详解:高效循环控制案例
运维·程序人生·算法·自动化
zhangxiaolong01015 天前
我关于汽车的一些看法
程序人生
测试界萧萧16 天前
10:00开始面试,10:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
自由鬼19 天前
企业架构框架深入解析:TOGAF、Zachman Framework、FEAF与Gartner EA Framework
程序人生·架构
小白探索世界欧耶!~19 天前
react 使用 postcss-px-to-viewport 实现 px 自动转 vw 自适应
前端·javascript·vue.js·程序人生·react.js·postcss
测试界茜茜22 天前
10:00开始面试,10:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展