1.where函数语句
单表查询
where可以查询单个表中某个特定值的数据或者符合某些条件的信息
student表IDNAMESTU_IDSEXBIRTHBORN_INmobile1张勇20150010201男199501北京135264389352李阳20150010202男199302上海131821706643李玲玉20150010203女199506广州185050308884秦天福20150010204男199403成都189831456785欧阳娜拉20150010205女199410重庆135136800016王淑芬20150010206女199507重庆137217664567赵永帅20150010207男199312广州150160881708钱永琪20150010208女199506深圳132861587439华天硕20150010209男199411香港1872127066810江疏影20150010210女199509郑州17601068006
例1:查询名字叫王淑芬的学生信息
select * from student where name='王淑芬'; ---输出王淑芬的信息
例2:查询所有女生的学生信息
select * from student where sex='女'; ---输出结果为所有女生的信息
例3:查询出生地为广州的男生信息
select * from student where born_in='广州' and sex='男'; ---输出赵永帅的信息
两个表或多表查询
可以查询两个表中有共同属性的数据信息
stu_info表IDSTU_IDNAMEMAJORTEACHERHOUSE120150010201张勇英语刘欢610220150010202李阳数学邓稼先610320150010203李玲玉工商管理钱钟书801420150010204秦天福化工金庸612520150010205欧阳娜拉计算机技术谭浩强801620150010206王淑芬软件工程王建民801720150010207赵永帅物理钱学森612820150010208钱永琪工商管理钱钟书802920150010209华天硕计算机技术谭浩强6121020150010210江疏影英语刘欢802
例1: 查询江疏影的专业信息
select * from stu_info where istu_id in ( select stu_id from student where name='江疏影');
---输出结果为sut_info表STU_ID为20150010210信息
例2:查询所有的学生基本信息和专业信息
select * from student a,stu_infob where a.stu_id=b.id; ---输出结果为两个表中所有的信息,且一一对应
2.sum/max/min/avg/count函数使用
当统计某些数据的总和、最大数、最小数及平均以及总数的时候,就需要用到这些函数
sut_scoreIDSTU_IDNAMECHINESEMATHENGLISHPOLITICAL 120150010201张勇86925873220150010202李阳81537880320150010203李玲玉73787371420150010204秦天福60866778520150010205欧阳娜拉69616967620150010206王淑芬88737373720150010207赵永帅91798777820150010208钱永琪78815981920150010209华天硕669565691020150010210江疏影67478276
例1:获取李玲玉的总分
select sum(CHINESE+MATH+ENGLISH+POLITICAL ) from sut_score where name='李玲玉'; ---输出为李玲玉四门学科分数的总和
例2:获取所有学员政治的总分
select sum(POLITICAL ) fromsut_score ;
例3:获取英语的最高分数
select max(ENGLISH) fromsut_score ;
例4:获取数学的最低分
select min(MATH) fromsut_score ;
例5:获取语文的平均分
selectavg(CHINESE) fromsut_score ;
例6:获取班级中的总人数
select count(*) from sut_score ;
select count(1) from sut_score ;
3.group by函数
group by函数往往和count,avg等函数联合使用,且在数据量较大时使用
表数据同上张表
例1:统计语文各个分数的人数
select count(1),chinese from stu_score group by chinese; ---输出结果为语文每个分数的人数
4.union与union ALL函数
union和union all都是查询两个表中相同字段值的数据,所以union语句局限性较大。另外需要注意的是union是去重且排序的,union all不去重且不排序。
例1:拿上面的student表和stu_info表来举例,获取两张表的相同的STU_ID和NAME的数据、
select name,sut_id from student union select name,sut_id from su_info;
select name,sut_id from student union all
select name,sut_id from su_info;
union两边的语句也可以加上where判断条件。
5.update函数
update函数在代码开发过程中以及测试过程中经常被用到,将数据库中的信息更新为最新的数据。
例1:华天硕和张勇的宿舍互换了一下,请更新数据
update stu_info set house='612' where name='张勇'; update stu_info set house='610' where name='华天硕';
6.like函数
like函数通常是查找一些类似的值。
例1:查找stu_info表中姓名的包含天的人员姓名列表
select * from stu_info where
name like
'%天%'; --结果为秦天福和华天硕的信息
7.DISTINCT函数
distinct函数是去除重复的值的数据。
例1:将学生成绩表中英语成绩分数由高到低排序且去除重复的。
select distinct ENGLISH from sut_score order by ENGLISH desc;
转载请注明原文地址: https://ju.6miu.com/read-6542.html