首页 > 代码库 > (九)使用特殊关系运算符查询

(九)使用特殊关系运算符查询

使用特殊关系运算符查询

  • 特殊关系运算符

    INNOT INIS NULLIS NOT NULLBETWEENNOT BETWEENLIKENOT LIKE
  • IN , NOT IN

    • IN 在集合中

    • NOT IN 不在集合中

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

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

      SELECT * FROM StudentWHERE 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 StudentWHERE stel is NULL
    • 例4 查询填了电话号码的学生

      SELECT * FROM StudentWHERE stel is NOT NULL
  • BETWEEN, NOT BETWEEN

    • BETWEEN AND, 在两值之间

    • NOT BETWEEN AND, 不在两值之间

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

    • BETWEEN 起始值 AND 终止值

    • NOT BETWEEN 起始值 AND 终止值

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

      SELECT * FROM Studentwhere sage BETWEEN 18 and 20

       

    • 例6 查询年龄小于18岁或大于20岁的学生信息

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

    • 实现模糊匹配查询

      • LIKE 字符串

      • NOT LIKE 字符串

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

        • _ , 匹配一个任意字符

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

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

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

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

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

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

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

        SELECT * FROM StudentWHERE sname LIKE [^赵钱孙李]%
  •  

技术分享

 

(九)使用特殊关系运算符查询