–条件查询(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
--查询成绩不在80和100之间的学号和课程信息,成绩信息
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