数据库之条件查询

本文主要介绍了数据库中的条件查询,包括比较运算符(如=, <>, >, <, >=, <=),逻辑运算符(NOT, AND, OR),范围运算符用于限制查询数据范围,以及模式匹配运算符如模糊查询(%和_进行通配符匹配,[]和[^]用于指定范围内的字符匹配)。此外,还讨论了如何使用IS[NOT]NULL来判断空值。" 84868077,687151,使用jstack分析Java线程堆栈,"['Java开发', '故障排查', '性能优化', '系统诊断']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

–条件查询(select condition From table name where searchcondition)

–1、比较运算符(=,<>,>,<,>=,<=)注意:<> 等价于 !=

    --查询Student_info中所有女生信息
    use Student_412
    select * From Student_info 
    where Sgender = '女'

–2、逻辑运算符(NOT,AND,OR)

    --查询Student_info表中年龄超过17岁的女生信息
    use Student_412
    select * From Student_info 
    where (year(getdate()) - year(Sbirth) > 17) and Sgender = '女' 

–3、范围运算符

格式:列名[NOT]BETWEEN 开始值 AND 结束值
说明:列名必须在开始值的结束值之间  
等效:列名>=开始值 and 列名 <= 结束值
     列名<开始值 or 列名 > 结束值(选NOT)
   --查询成绩在80和100之间的学号和课程信息,成绩信息
      m1:
       use Student_412
       select * From SC
       where Grade between 80 and 100        

      m2:
       use Student_412
       select * From SC
       where Grade >= 80 and Grade <= 100

--查询成绩不在80100之间的学号和课程信息,成绩信息
      m1:
       use Student_412
       select * From SC
       where Grade < 80 and Grade > 100 
      m2:
       use Student_412
       select * From SC
       where Grade not between 80 and 100

–限制查询数据的范围

 --查询学号为20100101和20110103同学的信息
      m1:
       use Student_412
       select * From student_info
       where Sid = '20110101' or Sid '20110103'
      m2:
       use Student_412
       select * From student_info
       where Sid in('20110101','20110103')

–4、模式匹配运算符(模糊查询)

(%):包括含0或多个字符的任意字符串

  --查询所有姓‘王’的学生的信息
   use Student_412
   select * From Student_info
   where Sname like '王%'
  --查询课程名中包含‘应用’的信息
   use Course_info
   select * From Course_info
   where Cname like '%应用%'

(_):任意单个字符(a_c表示以a开始c结束的三个)

   --查询姓‘陈’并且姓名共有两个字的同学的学号和姓名信息
   use Student_412
   select * From Student_info
   where Sname like '陈_'
   --查询姓‘陈’并且姓名共有两个字的同学的学号和姓名信息
   use Student_412
   select * From Student_info
   where Sname like '陈__'

([]):在指定范围(如[a-f]或者[abcdef]内任何单个字符)

  --查询姓‘陈’'张' ‘李’同学的学号和姓名信息
   m1:
      use Student_412
      select Sid,Sname 
      From Student_info
      where Sname like '王%' or Sname like '张%' or Sname like '李%'
   --查询姓‘陈’'张' ‘李’同学的学号和姓名信息
   m2:
      use Student_412
      select Sid,Sname 
      From Student_info
      where Sname like '[王张李]%'

([^]):不在指定范围(如[^a-f]或者[^abcdef]内任何单个字符)

  --查询不姓‘陈’'张' ‘李’的同学的学号和姓名信息
   m1:
      use Student_412
      select Sid,Sname 
      From Student_info
      where Sname not like '王%' and Sname like '张%' and Sname like '李%'
 --查询不姓‘陈’'张' ‘李’的同学的学号和姓名信息
   m2:
     use Student_412
      select Sid,Sname 
      From Student_info
      where Sname like [^王张李]%

–空值(NULL)判断符
–格式: IS[NOT]NULL

   --查询选修课程但是成绩为NULL的学生的信息
   use Student_412
   select * From SC
   where Grade is NULL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值