SQL查询语句(三)范围查找关键字

        在上一篇文章中,我们介绍了SQL语句中,逻辑关键字的作用,并举例演示了如何用逻辑关键字来组合WHERE子句。在文章的末尾我们提到了两个用于范围查找的关键字IN和BETWEEN。这两个关键字都可以与NOT关键字灵活组合,起到对字句结果取反的作用。这篇文章主要介绍这两个范围查找关键字的功能以及它们的简单用法。

目录

范围查找关键字

IN

BETWEEN

总结


范围查找关键字

  • IN

        IN关键字通常搭配一个元组(也可以是子查询)一起使用,表示查找存在于该元组中的所有元素对印的记录。它的使用方式很简单,如下所示:

SELECT [column1,column2]
FROM [table]
WHERE [column3] IN (value1,value2,value3);

SELECT * FROM student
WHERE age IN (18,19,20);

        上面这条SQL语句表示:从student表中,找出age等于18或者19或者20的记录,等同于下面这一条SQL语句:

SELECT * FROM student
WHERE age = 18 OR age = 19 OR age = 20;

        当然,IN不止可以用来判断数值类型的数字,还可以判断字符串类型,如下所示:

SELECT * FROM student
WHERE name IN ('张三','李四','王五');

         通过上面的例子我们能够理解IN的作用以及它的使用方式,在使用IN的过程中,有以下几点需要注意:

  1. IN后面跟的元组,使用的是半角括号
  2. 元组中的元素用逗号隔开,最后一个元素不用逗号
  3. IN可以跟NOT搭配使用,表示查找不存在于该元组中的所有元素对印的记录。
  • BETWEEN

    BETWEEN关键字也是用于范围查找的一个关键字,它的作用是查询出指定范围之间的所有记录。它的使用方式很简单,如下所示:

SELECT [column1,column2]
FROM [table]
WHERE [column3] BETWEEB value1 AND value2;

SELECT * FROM student
WHERE age BETWEEN 18 AND 20;

        上面这条SQL语句表示:从student表中,找出age处于18到20之间(包括了18和20)的记录,等同于下面这一条SQL语句:

SELECT * FROM student
WHERE age >= 18 AND age <= 20;

         同样,BETWEEN不止可以用来判断数值类型的数字,还可以判断日期等类型,如下所示:

SELECT * FROM student
WHERE birthday BETWEEN '2000-01-01' AND '2000-10-01';

         通过上面的例子我们能够理解IN的作用以及它的使用方式,在使用BETWEEN的过程中,有以下几点需要注意:

  1. BETWEEN关键字指定的区域,是一个闭区间,包含了左右边界的值
  2. 同理,NOT BETWEEN是BETWEEN的结果取反,因此它在判定时,不包含边界的值。
  3. 在判定日期格式的值时,最好统一使用'YYYY-MM-DD'的格式,这是首选的日期格式,因为它排除了多义性。

总结

        IN和BETWEEN时SQL语句中经常用到的范围查找的关键字(尤其是BETWEEN关键字),它们都可以通过NOT来对关键字的判定结果取反。在这篇文章中我们只介绍了这两个关键字的简单用法,在后面我们讲过子查询之后,还会深入介绍如何将这些关键字来搭配子查询一起使用,还是那句话,SQL的语法很简单,但是光靠死记硬背肯定不行,需要多加练习,后续在介绍完基础概念之后,会持续更新刷题笔记。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3021897.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C++语法|如何写出高效的C++代码(一)|对象使用过程中背后调用了哪些方法(构造和析构过程)?

文章目录 再探拷贝构造函数和重载复制运算符实例化新对象和赋值操作强转为类类型指针和引用时临时对象的构造和析构过程 考考你问题答案 再探拷贝构造函数和重载复制运算符 实例化新对象和赋值操作 首先我们写一个类&#xff0c;实现它的拷贝构造并重载赋值运算符。 class T…

C++贪心算法

关于string的系统函数&#xff01; &#xff08;注&#xff1a;以下函数只可用于string&#xff0c;不适用其他类型的变量&#xff09; ① a.size(); 这个系统函数是用来获取这个string变量的长度的&#xff0c;我们通常会新建一个变量来保存他&#xff0c;以便之后使用。 …

新火种AI|马斯克聘用OpenAI泄密者,他们的梁子着实越结越深...

作者&#xff1a;小岩 编辑&#xff1a;彩云 就在最近&#xff0c;昔日就职于OpenAI的工程师Pavel Izmailov正式加入了马斯克的AI团队&#xff0c;他还在自己的推特上大张旗鼓的做着宣传&#xff1a;研究院xai。 AI工程师的跳槽本不值得惊讶&#xff0c;但Pavel的跳槽却在行…

每日OJ题_记忆化搜索①_力扣509. 斐波那契数(四种解法)

目录 记忆化搜索概念和使用场景 力扣509. 斐波那契数 解析代码1_循环 解析代码2_暴搜递归 解析代码3_记忆化搜索 解析代码4_动态规划 记忆化搜索概念和使用场景 记忆化搜索是一种典型的空间换时间的思想&#xff0c;可以看成带备忘录的爆搜递归。 搜索的低效在于没有能够…

(五)JSP教程——response对象

response对象主要用于动态响应客户端请求&#xff08;request&#xff09;&#xff0c;然后将JSP处理后的结果返回给客户端浏览器。JSP容器根据客户端的请求建立一个默认的response对象&#xff0c;然后使用response对象动态地创建Web页面、改变HTTP标头、返回服务器端地状态码…

WP All Import Pro插件下载 - 一键导入,无限可能

在当今快节奏的数字时代&#xff0c;网站内容的更新和管理是每个网站管理员和开发者的日常工作。但是&#xff0c;传统的手动更新方法不仅耗时&#xff0c;而且容易出错。现在&#xff0c;有了WP All Import Pro&#xff0c;这一切都将改变。 WP All Import Pro 是一款专为Wor…

金融人需要什么机遇?中国人民大学与加拿大女王大学金融硕士能为你带来什么?

金融&#xff0c;作为现代经济的核心&#xff0c;为无数有志之士提供了施展才华的舞台。在这个日新月异、风云变幻的时代&#xff0c;金融人需要的机遇既是挑战也是机遇。中国人民大学与加拿大女王大学合作举办的金融硕士项目&#xff0c;正是为金融人量身定制的一次宝贵机遇。…

人工智能实验:人脸检测

一、实现目的&#xff1a; 了解人脸检测的主要方法&#xff1b;了解 detectMultiScale 函数的功能及用法&#xff1b;掌握使用 OpenCV 提供的分类器和检测器进行人脸检测的方法。 二、实验设备&#xff1a; 计算机一台&#xff1b;视觉实验软件环境及资源一套&#xff08;vi…

springcloud报错:Failed to start bean‘webServerStartStop‘

如果你正在使用nacos进行服务注册&#xff0c;然后报一下错误&#xff1a; 那就说明的nacos没有打开&#xff0c;所以找到你的下载nacos的文件夹 好了&#xff0c;错误完美解决~

【bash】笔记

在Shell脚本中&#xff0c;-e 是一个测试运算符&#xff0c;用于检查给定的文件或目录是否存在。 | 是通道符&#xff0c;会把前面的输出给后面作为输入。 sudo tee命令在这里用于同时更新文件和在终端显示输出&#xff08;尽管 > /dev/null 将标准输出重定向到黑洞&…

机器学习:基于TF-IDF算法、决策树,使用NLTK库对亚马逊美食评论进行情绪分析

前言 系列专栏&#xff1a;机器学习&#xff1a;高级应用与实践【项目实战100】【2024】✨︎ 在本专栏中不仅包含一些适合初学者的最新机器学习项目&#xff0c;每个项目都处理一组不同的问题&#xff0c;包括监督和无监督学习、分类、回归和聚类&#xff0c;而且涉及创建深度学…

react状态管理之state

第三章 - 状态管理 随着你的应用不断变大&#xff0c;更有意识的去关注应用状态如何组织&#xff0c;以及数据如何在组件之间流动会对你很有帮助。冗余或重复的状态往往是缺陷的根源。在本节中&#xff0c;你将学习如何组织好状态&#xff0c;如何保持状态更新逻辑的可维护性&…

学习软考----数据库系统工程师22

关系运算 基本的关系代数运算 拓展的关系运算 除&#xff1a;需要S连接中属性为C和D的两个元组都与R连接一样&#xff0c;且在R连接中对应的另外的元素完全一致 总结

C++语法|如何写出高效的C++代码(一)|对象使用过程中背后调用了哪些方法?

文章目录 再探拷贝构造函数和重载复制运算符实例化新对象和赋值操作强转为类类型指针和引用时临时对象的生成析构过程 考考你问题答案 再探拷贝构造函数和重载复制运算符 实例化新对象和赋值操作 首先我们写一个类&#xff0c;实现它的拷贝构造并重载赋值运算符。 class Tes…

scala速通(精简版)

1.变量和常量 var name [:VariableType] value // variable val name [:ConstantType] value // constant1.声明变量时&#xff0c;类型可以省略 2.类型定义后就不能修改言 3.变量声明必须有初始值 4.变量&#xff0c;常量分别用var&#xff0c;val声明修饰 2.标识符命名…

C++学习————第十天(string的基本使用)

1、string 对象类的常见构造 (constructor)函数名称 功能说明&#xff1a; string() &#xff08;重点&#xff09; 构造空的string类对象&#xff0c;即空字符串 string(const char* s) &#xff08;重点&#xff09;…

算法学习006-瓷砖总数 广度优先算法BFS 中小学算法思维学习 信奥算法解析 c++实现

目录 C瓷砖总数 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C瓷砖总数 一、题目要求 1、编程实现 在一个长方形房间&#xff0c;铺着不同颜色的的瓷砖&#xff0c;有红色和黑色&#…

分割模型Maskformer系列

maskformer&#xff1a;Per-Pixel Classification is Not All You Need for Semantic Segmentation 论文地址&#xff1a;https://arxiv.org/pdf/2107.06278 1.概述 传统的语义分割方法通常采用逐像素分类&#xff08;per-pixel classification&#xff09;&#xff0c;而实…

【C++】滑动窗口:最大连续1的个数

1.题目 2.算法思路 其实在做这道题的时候并不需要真的把0翻转成1&#xff0c;只需要找到最长的子数组且该子数组中0的个数不大于K&#xff0c;就可以了&#xff01; 当然我们首先想到的是暴力穷举法&#xff1a; 找到所有符合题意的子数组&#xff0c;跳出最长的那个就可以了…

词袋法TFIDF

Tf-idf⽂本特征提取 TF-IDF的主要思想是&#xff1a;如果某个词或短语在⼀篇⽂章中出现的概率⾼&#xff0c;并且在其他⽂章中很少出现&#xff0c;则认为此词或者短语具有很好的类别区分能⼒&#xff0c;适合⽤来分类。TF-IDF作⽤&#xff1a;⽤以评估⼀字词对于⼀个⽂件集或…