基本查询语句:
select [all | distinct] 字段或表达式列表 [from子句] [where子句] [group by子句] [having子句] [order by子句] [limit子句];
表达式列表中的条件语句顺序不能乱,
from:数据来源,表示数据来源于哪张表,例句:select * from student(student是表名);
where:条件字句,可连接运算符,结果为布尔值,例句:select * from student where name = “王小明”;(name是表中的字段名)
between:字段XX的值在值1和值2之间(包含),例句:xx between 值1 and 值2
in:字段XX的值在不在某个范围里面,例句:XX in (值1,值2,.......);
like:模糊查找,用于对字符类型的字段进行字符匹配查找,例句:XX like ‘%关键字%’;% 其含义是:代表任意个数的任意字符,_ 其含义是:代表1个的任意字符
like ‘%ab\%cd%’代表要找的是: 包含 ab%cd 字符的字符,
like ‘\_ab%’ 代表要找的是: _ab开头的字符
like ‘%ab\’cd%’ 代表要找的是: 包含 ab’cd 字符的字符
group by: 分组子句,将数据以某个字段的值为“依据”,分到不同的“组别”里。
数据分组后,结果中通常只剩下“组”作为整体的信息,分组后的数据不能用where来进行条件查找,除非查找的字段就是分组本身,应该用having进行条件查找,
having函数:
count(*): 统计一组中的数量,通常用“*”做参数
max(字段名):获取该字段中在该组中的最大值。
min(字段名):获取该字段中在该组中的最小值。
sum(字段名):获取该字段中在该组中的总和。
avg(字段名):获取该字段中在该组中的平均值。
group_concat(字段名):获取该分组内的这个字段所有信息,每条逗号分隔
Order by:排序,默认正序,倒序是desc 例句:select XX from student order by degree desc;
limit:表示将前面取得的数据并前面排好之后(如果有),对之指定取得“局部连续的若干条”数据。简单点说,就是从第几行开始取值,取前几个,例句:select XX from student limit(0,2) 从第0个开始,取前两个