使用特殊关系运算符查询

  • 特殊关系运算符

    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. 浅谈android Service和BroadCastReceiver

    1.题记 Android中的服务和windows中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序. 广播接收者(BroadcastRece ...

  2. 【转载】SSD断电保护原理

    异常掉电的隐患 若没有合理的掉电保护机制,而异常掉电的发生又不可避免,当发生异常掉电,会引发很多问题. (1)丢盘 异常掉电,会使得映射表来不及保存,丢失逻辑地址到物理地址的映射,待重新上电后,SSD ...

  3. Hadoop版本的选择问题

    自从2013年下半年开始,hadoop的版本开始了快速的更新换代,这和通信和互联网行业(ICT)的发展是密切相关的.随着移动网络的和宽带网络的覆盖以及数据传输速率的提升,线上的数据有了爆炸式的增长.这 ...

  4. 升级framework4.0后form认证票据失效的问题

    好久没来了,密码都差点忘了,顺便记录下今天配置环境碰到的小问题 网站使用的form authentication做SSO登录,登录域名使用的framework20配置环境 一个栏目升级为4.0环境后, ...

  5. Redis学习笔记之底层数据结构

    1.简单动态字符串(simple dynamic string, SDS) 定义: struct sdshdr {        int len;//记录buf中使用的字节数量        int ...

  6. Linux内核分析第五章读书笔记

    第五章 系统调用 在操作系统中,内核提供了用户进程与内核进行交互的一组接口,这些接口在应用程序和内核之间扮演了使者的角色,保证系统稳定可靠,避免应用程序肆意妄行. 5.1 与内核通信 系统调用在用户空 ...

  7. 评审other's意见

    评审意见 1.组 a.界面不友好 b.没连数据库 2.组 a.没连数据库 b.无智能匹配当前时间 3.组 a.基本功能实现 b.界面未优化 4.组 ourselves 5.组 a.各反面较为完善 6. ...

  8. ElasticSearch 2 (21) - 语言处理系列之单词识别

    ElasticSearch 2 (21) - 语言处理系列之单词识别 摘要 一个英语单词相对容易识别:因为英语单词是被空格或(某些)标点符号隔开的.但在英语中也有反例:you're 这个词是一个单词还 ...

  9. java 多维数据定义

            //一维数组定义与输出class  less02{ public static void main(String[] args)  {  int stu[]=new int[]{1,2 ...

  10. CentOS下面磁盘扩容处理

    1. 给虚拟机增加一块硬盘: 过程不表 2. 增加了硬盘之后需要重启一下 查看磁盘 ls /dev/sd* 3. 使用  gdisk 处理磁盘 注意 这里面fdisk 貌似没法处理成 LVM 必须使用 ...