查询
基本语法
select *
from 表名
where 条件
条件筛选
where子句(通配符、按名字长度、按年龄范围)
where student.name like '李%' --(姓李)
where student.name like '%李' --(以李结尾)
where student.name like '%李%' --(有李字)
where student.name like '_李%' --(第二个字是李)
where len(xsqk.姓名)=3 --(姓名字符数为3)
where age between 18 and 20; --(年龄在18到20之间)
order by 子句:对查询结果按指定列升序或降序排序(默认升序asc,降序desc)
select *
from XS_KC
order by 成绩 desc
--对“成绩”列降序排序
order by 3 asc
--对第三列升序排序(列序号从1开始)
group by 子句:对查询结果按指定列的值分组,通常在每组中作用聚集函数。
- 使用group by子句时,被查询的列必须包含在聚合函数或 GROUP BY 子句中
having 子句:用在group by子句后,只有满足条件的组才予以输出。
select cno 学号,avg(grade) 平均成绩 --(列更名,显示列为学号和平均成绩)
from sc
group by cno --按照学号分组
having avg(grade)>60 --平均成绩大于60的组予以输出
将查询结果保存到表
- 存到新建表
select *
into 新表名
from 表名
- 存到已存在的表
insert into 目标表名
select *
from 查询表名
特殊值转义输出
查询Student表中的Number,class,gender,grade更名为 学号 班级 性别 成绩;其中gender中值为0的输出男,为1输出女,其他输出X。