MySQL单表查询进阶总结

文 / @WordPress主题

MySQL单表查询进阶总结

在进行数据库操作时,查询操作无疑是非常重要且常用的操作之一。数据的查询操作可以帮助我们根据具体的需求,设计高效的查询操作,以展示所需的数据给用户。在实际开发中,根据不同的需求并考虑查询效率,决定如何进行查询,本文将围绕MySQL单表查询展开,介绍基础查询、条件查询、排序查询、分组查询以及分页查询等相关知识点。

基础查询

基础查询语法包含3个部分:SELECT、FROM和字段列表。SELECT用于查询需要的字段,FROM用于指定查询的表名,字段列表则表示需要查询的字段。以下是基础查询的语法示例:

SELECT 字段列表 FROM 表名;

当需要查询全部字段时可以使用以下语法:

SELECT * FROM 表名;

去除重复记录可使用以下语法:

SELECT DISTINCT 字段列表 FROM 表名;

起别名操作可使用以下语法:

SELECT 字段名 别名 FROM 表名;

条件查询

条件查询语法包含4个部分:SELECT、FROM、WHERE和条件列表。其中,WHERE用于添加任何需要的条件。以下是条件查询的语法示例:

SELECT 字段列表 FROM 表名 WHERE 条件列表;

在条件查询中,我们通常需要使用以下运算符:大于(>)、小于(=)、小于等于( 20;

查询年龄等于18岁或20岁或21岁的学生信息:

SELECT * FROM stu WHERE age IN (18, 20, 21);

模糊查询通常使用like关键字,可以使用通配符进行占位,其中_代表单个任意字符,%代表任意个数字符。以下是模糊查询的示例:

查询姓名中含有张的学生信息:

SELECT * FROM stu WHERE name LIKE '%张%';

排序查询

排序查询常用语法包含3个部分:SELECT、FROM和ORDER BY。其中ORDER BY用于指定排序方式,包括排序字段名和排序方式。默认情况下是升序ASC。以下是排序查询的示例:

查询数学成绩并按照成绩从高到低排序:

SELECT * FROM stu ORDER BY math DESC;

聚合函数

聚合函数通常用于对一整列进行运算,如计算一整列成绩数据的平均值,以下是常用的聚合函数:count(列名)统计数量、max(列名)最大值、min(列名)最小值、sum(列名)求和、avg(列名)平均值。以下是聚合函数的通用语法:

SELECT 聚合函数 FROM 表名;

对于NULL值,不参与聚合函数运算。通常使用*进行运算,因为一行中不可能所有的字段都是NULL。以下是聚合函数的示例:

查询数学成绩的平均分:

SELECT AVG(math) FROM stu;

分组查询

分组查询通过GROUP BY实现,通常包含3个部分:SELECT,FROM,GROUP BY和HAVING。其中,GROUP BY用于指定分组字段,HAVING用于过滤分组后的结果。以下是分组查询的通用语法:

SELECT 字段列表 FROM 表名 WHERE 分组前的条件限定 GROUP BY 分组字段名 HAVING 分组后的条件过滤;

在分组查询中,WHERE和HAVING的执行时机不同。WHERE用于分组之前进行限定,不满足WHERE条件,则不会参与分组,HAVING则是分组之后对结果进行过滤。以下是分组查询的示例:

查询男同学和女同学各自的数学平均分以及各自人数,要求:分数低于70分的不参与分组:

SELECT gender, AVG(math), COUNT(*) FROM stu WHERE math > 70 GROUP BY gender;

查询男同学和女同学各自的数学平均分以及各自人数,要求:分数低于70分的不参与分组,分组之后人数大于2个:

SELECT gender, AVG(math), COUNT(*) FROM stu WHERE math > 70 GROUP BY gender HAVING COUNT(*) > 2;

分页查询

分页查询用于查询大量数据时,每次只查询一页的数据。分页查询语法包含3个部分:SELECT,FROM和LIMIT,其中LIMIT用于指定查询起始索引和查询条目数。以下是分页查询的通用语法:

SELECT 字段列表 FROM 表名 LIMIT 查询起始索引, 查询条目数;

在LIMIT关键字中,查询起始索引这个参数是从0开始的。以下是分页查询的示例:

从第0条记录开始查询3条数据:

SELECT * FROM stu LIMIT 0, 3;

推荐学习

上述是MySQL单表查询的相关知识点,希望能够对读者有所帮助。如果想要深入学习MySQL操作,PHP中文网推荐学习MySQL视频教程。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。