使用特殊关系运算符查询

  • 特殊关系运算符

    IN、NOT IN
    IS NULL、IS NOT NULL
    BETWEEN、NOT BETWEEN
    LIKE、NOT LIKE
  • IN , NOT IN

    • IN 在集合中

    • NOT IN 不在集合中

    • 例1 查询籍贯是陕西、河南的学生

      SELECT * FROM Student
      WHERE province IN('陕西', '河南')
       
    • 例2 查询籍贯不是是陕西和河南的学生

      SELECT * FROM Student
      WHERE province NOT IN('陕西', '河南')
      --IN(11,12,13), IN('2015-10-1','2016-10-1'), 用逗号隔开的数据类型应该和IN前面的类型相同
  • IS NULL, IS NOT NULL

    • IS NULL 是空

    • IS NOT NULL 不是空

    • 例3 查询没填电话号码的学生

      SELECT * FROM Student
      WHERE stel is NULL
    • 例4 查询填了电话号码的学生

      SELECT * FROM Student
      WHERE stel is NOT NULL
  • BETWEEN, NOT BETWEEN

    • BETWEEN AND, 在两值之间

    • NOT BETWEEN AND, 不在两值之间

      • 两值可以是数值、字符串或日期型数据

    • BETWEEN 起始值 AND 终止值

    • NOT BETWEEN 起始值 AND 终止值

    • 例5 查询年龄在18到20岁的学生信息

      SELECT * FROM Student
      where sage BETWEEN and
    • 例6 查询年龄小于18岁或大于20岁的学生信息

      SELECT * FROM Student
      WHERE sage NOT BETWEEN and
    •  
      注意:
      1. 区间是闭区间 
      2. 两值的类型可以是数值、字符串或日期型 
      3. 日期作终止值时,不包括终止值那天.
       
  • LIKE, NOT LIKE

    • 实现模糊匹配查询

      • LIKE 字符串

      • NOT LIKE 字符串

        • %,匹配0个或多个任意字符

        • _ , 匹配一个任意字符

        • [],匹配集合中的任意一个字符 [ABC]

        • [^],不匹配集合中的任何字符 [^ABC]

      • 例7 查询姓'陈'的同学信息

        SELECT * FROM Student
        WHERE sname LIKE '陈%'
      • 例8 查询名字中含有“雨”的同学的信息

        SELECT * FROM Student
        WHERE sname LIKE '%雨%'
      • 例9 查询姓“郑”的,且名字为两个字的同学的信息

        SELECT * FROM Student
        WHERE sname LIKE '郑_'
      • 例10 查询姓为赵、钱、孙、李的同学的信息

        SELECT * FROM Student
        WHERE sname LIKE '[赵钱孙李]%'
      • 例11 查询姓不是赵、钱、孙、李的同学的信息

        SELECT * FROM Student
        WHERE sname LIKE '[^赵钱孙李]%'

SQL语句(九)使用特殊关系运算符查询的更多相关文章

  1. SQL点滴10—使用with语句来写一个稍微复杂sql语句,附加和子查询的性能对比

    原文:SQL点滴10-使用with语句来写一个稍微复杂sql语句,附加和子查询的性能对比 今天偶尔看到sql中也有with关键字,好歹也写了几年的sql语句,居然第一次接触,无知啊.看了一位博主的文章 ...

  2. sql语句编写 有时候一个子查询可以拆分成多个子查询

    sql语句编写 有时候一个子查询可以拆分成多个子查询

  3. ASPNETCOREAPI 跨域处理 SQL 语句拼接 多条件分页查询 ASPNET CORE 核心 通过依赖注入(注入服务)

    ASPNETCOREAPI 跨域处理 AspNetCoreApi 跨域处理 如果咱们有处理过MV5 跨域问题这个问题也不大. (1)为什么会出现跨域问题:  浏览器安全限制了前端脚本跨站点的访问资源, ...

  4. python快速导出sql语句(mssql)的查询结果到Excel,解决SSMS无法加载大字段的问题

    遇到一个尴尬的问题,SSMS的GridView对于大字段的(varchar(max),text之类的),支持不太友好的,超过8000个长度之外的字符,SSMS的表格是显示不出来的(当然也就看不到了), ...

  5. oracle SQL语句练习MERGE、模糊查询、排序、

    Oracle支持的SQL指令可分为数据操作语言语句.数据定义语言语句.事务控制语句.会话控制语句等几种类型:1.数据操作语言语句数据操作语言语句(Data manipulation language, ...

  6. 原!!mybatis如何直接 执行传入的任意sql语句 并按照顺序取出查询的结果集

    需求: 1.直接执行前端传来的任何sql语句,parameterType="String", 2.对于任何sql语句,其返回值类型无法用resultMap在xml文件里配置或者返回 ...

  7. Hibernate criteria 混合sql语句多表关联时查询注意事项

    直接进入正题 假设有一个实体类 /** * 产品分类 */ public class ProductType{ @Id private String no;//编号 private String na ...

  8. 使用with语句来写一个稍微复杂sql语句,附加和子查询的性能对比

    今天偶尔看到sql中也有with关键字,好歹也写了几年的sql语句,居然第一次接触,无知啊.看了一位博主的文章,自己添加了一些内容,做了简单的总结,这个语句还是第一次见到,学习了.我从简单到复杂地写, ...

  9. sql语句回忆录1-多表连接子查询

    --多表连接查询,在多张表中查询符合条件的记录--注意:给表起简短的别名select * from emp e--给字段起别名:字段名 别名,当别名为数字(包括数字开头)或者有空格时需要用双引号括起来 ...

随机推荐

  1. 开源微信Http协议Sdk【实现登录/获取好友列表/修改备注/发送消息】

    基于微信Http协议封装的一个Sdk,目前实现了以下功能:. 1:扫码登录(检测二维码扫描状态) 2:获取最近联系人.群组.所有联系人 3:修改好友备注 4:给好友发送消息 暂且这么多,也没多余的时间 ...

  2. rabbitMQ教程(四) spring整合rabbitMQ代码实例

    一.开启rabbitMQ服务,导入MQ jar包和gson jar包(MQ默认的是jackson,但是效率不如Gson,所以我们用gson) 二.发送端配置,在spring配置文件中配置 <?x ...

  3. pandas 初识(四)

    Pandas 和 sqlalchemy 配合实现分页查询 Mysql 并获取总条数 @api.route('/show', methods=["POST"]) def api_sh ...

  4. Unity利用SMSSDK实现短信验证码(附代码)

    最近一直在研究如何给app更多实用性的功能,在app进行登录或者注册时,为了方便用户更加快捷的完成登录功能,所以就决定采用短信验证码的方式进行验证登录.在学习的过程中,先使用了Mob的短信服务进行短信 ...

  5. 用信鸽来讲解HTTPS的知识

    加密是一个很难理解的东西,这里头满是数学证明.不过,除非你是在开发一个加密系统,否则无需了解那些高阶的复杂知识. 如果你看这篇文章是为了创造下一个 HTTPS 协议,很抱歉,请出门左走,鸽子是远远不够 ...

  6. PHP完美分页类

    <?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $lis ...

  7. Scrum Meeting NO.3

    Scrum Meeting No.2 1.会议内容 之前的两天无法登录TFS服务器来生成燃尽图,再加上这种方式只能生成当日的燃尽图,我们决定改用excel生成燃尽图.(作为一个渣渣pm,我用了一下午才 ...

  8. 淘宝卖家搜索器V1.6算法注册机。

    该软件的算法非常简单,适合小白练手.(E语言写的)1.OD加载该软件,输入bp MessageBoxA 2.点击注册 3.OD就会中断下来了 4.按ALT+K打开调用堆栈 5.往上翻,就来到算法处了 ...

  9. linux课外命令

    1.要知道linux是多少位的 在命令行输入 getconf LONG_BIT 返回32就是32位,返回64就是64位的. 2.CentOS-7-x86_64-DVD-1708.iso 这种代表64位 ...

  10. noip2017颓废记

    作为一个从初中就开始学信息的蒟蒻,自然要去提高组了~~~ 比赛前day1 跟平常一样在机房颓废着,上午在洛谷看到了站长大人的忠告后,看了看模板题,发现没几个会打的(正常). 下午想一想发现自己的dp垃 ...