1.增删改查
1.增删改:对数据库有修改
2.查:不改变数据库
2.查询语句
1.书写顺序
select…from…where…group by…howing…order by…limit…
(1) select…输出
(2) from…获取数据
(3) where…过滤
(4) group by…分组
(5) howing…过滤
(6) order by…排序
(7) limit…限定个数
2.执行顺序
from…where…group by…select…
howing…order by…limit…
3.字段含义
1.FROM
读取表格
'''读取Stu全表,将表中的数据都获取进来'''
FROM Stu
2.SELECT
查询属性
SELECT * FROM Stu
*代表所有的属性(列)
'''从Stu表中找出Name这一列'''
SELECT Name FROM Stu
3.WHERE
对在FROM中获取的数据进行过滤:AND、OR、 !=
注:不去重
'''名字为小刚则输出,且只输出名字'''
SELECT Name FROM Stu WHERE Name='小刚'
'''名字为小刚则输出所在的一整行'''
SELECT * FROM Stu WHERE Name='小刚'
4.GROUP BY
对数据进行分组
'''SELECT遇到分组时,输出的是各分组的第一行'''
SELECT * FROM Stu GROUP BY Classid
SELECT id,Classid from Stu WHERE id%2=0 GROUP BY Classid
聚集函数count:计算组别个数
SELECT count(1),classid FROM Stu GROUP BY Classid
注:count是不去重的
'''Name个数,Name为NULL时不计数'''
SELECT count(Name),Classid FROM Stu GROUP BY Classid
'''有相同名字时只统计一遍'''
SELECT count(distinct Name),Classid FROM Stu GROUP BY Classid
注:count(distinct 1)=1
4.2 GROUP BY
'''查询的是classid与name相同的数据组'''
SELECT * FROM Stu GROUP BY Classid,Name
4.3 聚集函数
(1) count 计数
(2) sum 求和 sum(1)=count(1); sum(2)=2 count(2)
(3) max 最大值
(4) min 最小值
(5) avg 平均值
(6) group-concatc 字符串集合