SQL BETWEEN

2025年2月2日 | 5 分钟阅读

BETWEEN是SQL中的一个逻辑运算符,它在查询中指定的范围内从表中提取记录。我们可以使用此运算符来选择数字、文本或日期。

SQL中的BETWEEN运算符包含起始值和结束值。

BETWEEN运算符在WHERE子句中与以下四个SQL语句一起使用

  1. SELECT 语句
  2. UPDATE 语句
  3. DELETE 语句
  4. INSERT语句

SQL中BETWEEN运算符的语法

column_name的值大于或等于value1且小于或等于value2时,BETWEEN运算符返回True

SQL中BETWEEN运算符的示例

在本文中,我们通过以下不同的SQL示例来帮助您了解如何使用BETWEEN运算符。

示例1:我们以以下STUDENT表为例,以帮助您理解BETWEEN运算符。

Roll_No名称分数年龄
1拉曼 (Raman)9520
2Kapil9219
3Arun8517
4Ram9218
5Suman5520
6Sanjay8818
7Sheetal6519
8Rakesh6420

假设我们想从下面的学生表中提取“marks”大于或等于80且小于或等于100的学生记录。为此,我们必须在结构化查询语言中执行以下查询。

此查询在SQL输出中显示以下表。

Roll_No名称分数年龄
1拉曼 (Raman)9520
2Kapil9219
3Arun8517
4Ram9218
6Sanjay8818

示例2:我们以以下STUDENT表为例,以帮助您理解NOT BETWEEN运算符。

Roll_No名称分数年龄
1拉曼 (Raman)9520
2Kapil9219
3Arun8517
4Ram9218
5Suman5520
6Sanjay8818
7Sheetal6519
8Rakesh6420

假设我们想从下面的学生表中提取标记既不大于80也不小于100的学生记录。为此,我们必须在结构化查询语言中执行以下查询。

此查询在SQL输出中显示以下表。

Roll_No名称分数年龄
5Suman5520
7Sheetal6519
8Rakesh6420

示例3:我们以以下EMPLOYEE表为例,以帮助您理解带有日期的BETWEEN运算符。

Emp_ID名称Emp_SalaryEmp_Joining
1001Vivek90002021/01/02
1002Saket40002019/06/05
1003拉曼 (Raman)30002020/02/05
1004Suraj60002020/04/01
1005Seenu50002019/12/04
1006Shubham100002021/02/05
1007Anaya40002020/12/20
1008Parul80002019/04/15

假设我们想从上面的员工表中提取加入日期在2019/06/05和2020/12/20之间的员工记录。为此,我们必须在SQL中键入以下查询。

此查询在SQL输出中显示以下表。

Emp_ID名称Emp_SalaryEmp_Joining
1002Saket40002019/06/05
1005Seenu50002019/12/04
1007Anaya40002020/12/20
1008Parul80002019/04/15

BETWEEN与UPDATE语句

在SQL中,我们也可以在WHERE子句中使用BETWEEN运算符和UPDATE语句。BETWEEN运算符更新表中满足查询中指定范围的记录。

BETWEEN与UPDATE语句的语法

BETWEEN与UPDATE语句的示例

在这里,我们通过以下两个SQL示例来帮助您了解如何使用BETWEEN运算符和UPDATE语句来更新表中的现有记录。

示例1:我们以以下STUDENT表为例,以帮助您理解带有UPDATE语句的BETWEEN运算符。

Roll_No名称分数Attendance
1拉曼 (Raman)9520
2Kapil9217
3Arun8517
4Ram9218
5Suman5519
6Sanjay8817
7Sheetal6519
8Rakesh6420

假设我们想更新那些出勤率大于等于18且小于等于20的学生的标记。为此,我们必须在结构化查询语言中执行以下查询。

如果您想查看表中发生的变化,则必须键入以下查询。


Roll_No名称分数Attendance
1拉曼 (Raman)9820
4Ram9818
5Suman9819
7Sheetal9819
8Rakesh9820

示例2:我们以以下STUDENT表为例,以帮助您理解NOT BETWEEN运算符。

Roll_No名称分数Attendance
1拉曼 (Raman)9520
2Kapil9217
3Arun8517
4Ram9218
5Suman5519
6Sanjay8817
7Sheetal6519
8Rakesh6420

假设我们想更新那些出勤率既不大于等于18也不小于等于20的学生的标记。为此,我们必须在SQL中键入以下查询。

如果您想查看表中发生的变化,则必须键入以下查询。


Roll_No名称分数Attendance
2Kapil5017
3Arun5017
6Sanjay5017

示例3:我们以以下EMPLOYEE表为例,以帮助您理解带有日期的BETWEEN运算符。

Emp_ID名称Emp_SalaryEmp_Joining
1001Vivek90002021/01/02
1002Saket40002019/06/05
1003拉曼 (Raman)30002020/02/05
1004Suraj60002020/04/01
1005Seenu50002019/12/04
1006Shubham100002021/02/05
1007Anaya40002020/12/20
1008Parul80002019/04/15

假设我们想更新那些在2019/06/05和2020/12/20之间加入公司的员工的薪水。为此,我们必须在SQL中键入以下查询。

如果您想查看表中发生的变化,则必须键入以下查询。


Emp_ID名称Emp_SalaryEmp_Joining
1002Saket250002019/06/05
1005Seenu250002019/12/04
1007Anaya250002020/12/20
1008Parul250002019/04/15