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
一个小小的程序员
原文地址:https://www.cnblogs.com/zhaod/p/8370983.html