sql
select * from student;
select:选取
from:来源
*:所有栏位
sql
select 姓名,班级,成绩 from students;
选取特定栏位
sql
select 姓名,班级,成绩 from students limit 5;--限制显示拦数
select 姓名,班级,成绩 from students limit 5 offset 10;--跳过前10笔,显示11到15笔
limit 5:限制查询的笔数
limit 5 offset 10:跳过前10笔,显示11到15笔
sql
select 姓名,班级,成绩
from students
where 班级 = '一年二班' -- <>不等于
orderd by 班级; --根据特定栏位进行排序,把相同班级的人排在一起
order by 班级,成绩; --同一个班级内,成绩由低到高排序
order by 班级,成绩 DESC; --降序排序
where表示筛选条件
where 班级 <> '一年二班': 不等于
orderd by 顺序:
根据特定栏位进行排序,把相同班级的人排在一起
order by 班级,成绩:
同一个班级内,成绩由低到高排序
order by 班级,成绩 DESC:
降序排序
sql
select 姓名,班级,成绩
from students
where 姓名 = '张晓婷'
/*系统显示所有姓张的同学
--%代表零个或多个任意字元
--like表示符合
*/
where 姓名 like '张%'
/*系统显示所有姓张且名字为两个字的同学
--_表示一个字元
*/
where 姓名 like '张_'
sql
select 姓名,班级,成绩
from students
where 成绩 >=80 and 成绩 <90
where 成绩 between 80 and 90 --左闭右开
where 成绩 between 80 and 90 and 班级 = '一年一班' or 班级 = '一年二班'
-- 会显示一年二班中成绩不在特定区间的同学
/*and优先级高于or*/
where 成绩 between 80 and 90 and (班级 = '一年一班' or 班级 = '一年二班' )
where 成绩 between 80 and 90 and (班级 in('一年一班','一年二班'))
avg平均值,sum(),max(), min(), count()
as 别名
sql
select avg(成绩),sum(成绩),max(成绩), min(成绩), count(成绩)
from students;
--显示平均分数/总和/最大值/最小值/数量
select avg(成绩) as 成绩平均,max(成绩) as 最高分
from students;
--设置别名
round() 保留小数
group by分组
sql
select round(avg(成绩),1) as 成绩平均
from students;
--保留一位小数
select round(avg(成绩)) as 成绩平均
from students;
--保留整数
select 班级, round(avg(成绩)) as 成绩平均
from students
group by 班级;
--显示每个班的平均成绩
select 班级, round(avg(成绩)) as 成绩平均
from students
group by 班级
order by 成绩平均 DEC
语句顺序
count(*)-计算总行数
count(distinct(班级)) -- 只有三行,只有三个班级
sql
select count(*)
from students
select count(班级)
select count(distinct(班级)) --删除重复的
creat table建立表格
drop table删除表格
sql
creat table club(
社团编号 int PRIMARY KEY
社团名称 varchar(15)
)
drop table club2
insert into
sql
insert into clubs(社团编号, 社团名称)
values(101,'吉他社'),(102, '篮球社')
update
sql
insert into clubs(社团编号, 社团名称)
values(101,'吉他社'),(102, '篮球社')
uodate clubs
set 社团名称 = '舞蹈社'
where 社团编号 = '101'
delete
sql
delete
from clubs
where 社团编号 = 101;
跨表格查询 left join inner join
sql
select students.姓名 students.社团 students.社团名称
from students
left join clubs -- 把clubs表格加进来(列出左侧表格的所有记录)
on student.社团 = clubs.社团编号 --两个表格如何连接
select students.姓名 students.社团 students.社团名称
from students
inner join clubs -- 把clubs表格加进来(内部联结,只有成功对应的记录才会被列出来)
on student.社团 = clubs.社团编号 --两个表格如何连接