05_mysql单表查询
1 简单数据记录查询
- 基本语法如下
select filed1,field2,field3... from table_name
1.1 简单数据查询
- 查询所有字段
select * from student;
- 查询部分字段
SELECT stu_name from student;
1.2 避免重复数据查询
在使用mysql查询的时候,有时候会显示重复的数据,为了解决这一个问题,提供了关键字-distinct
SELECT DISTINCT stu_name from student;
1.3 实现四则运算数据查询
有时候需要实现数学运算,如+,-,*,/,%
SELECT stu_age + 30 FROM student;
1.4 设置显示格式数据查询
例如:concat(),拼接函数
SELECT CONCAT("姓名:",stu_name) as '姓名' FROM student;
2 根据条件查询记录数
有时候用户在使用查询的时候,用户不需要查询所有的记录数,而只需要根据限制条件来查询一部分数据记录
- 带关系运算符和逻辑运算符的而条件查询
- 带between and关键字
- 带is (not) null关键字
- 带(not) in关键字
- 带like 关键字
下面重点介绍like模糊查询用法
2.1 like模糊查询
- 通配符
主要是用来实现匹配部分值的特殊字符
两种通配符:
- ‘-’:匹配单个字符
- ‘%’:匹配任意长度的字符
SELECT * from student where stu_name like 'zha%';
select * from student where stu_name like 'zha_';
3 排序数据记录查询
mysql软件提供order by关键字进行排序,升序asc,降序desc,默认是asc升序
- 根据一个字段排序
SELECT * from student ORDER BY stu_age DESC;
- 根据多个字段排序
SELECT * FROM student ORDER BY stu_age ASC, stu_score DESC;
4 限制数据记录查询的数量limit
- 指定初始位置
- 不指定初始位置
- 语法
select * from table_name limit off_start,row_count;
5 统计函数和分组记录查询
统计函数
- count():该统计函数实现统计表中的记录的条数,正常不会采用这个方法count(),一般都是count(1),或者count(filed)
- avg():该统计函数实现计算字段值得平均值
- sum(): 该统计函数实现计算字段值得总和
- max(): 该统计函数实现查询字段值得最大值
- min(): 该统计函数实现查询字段值得最小值
分组记录查询 group by
- 分组统计,注意的是查询select 的字段只可以使统计函数或者是分组的字段
- 语法
select function(field)from table_name where condition group by field,... having condition
一个小小的程序员