如何在mysql中查询数据_mysql查询语句基础讲解

11次阅读

mysql查询数据核心是select语句,支持基础查询、WHERE条件筛选、ORDER BY排序、LIMIT分页、GROUP BY分组及HAVING筛选等完整功能。

如何在mysql中查询数据_mysql查询语句基础讲解

在 MySQL 中查询数据,核心是使用 SELECT 语句。它是最常用、最基础的 SQL 命令,用来从一个或多个表中提取所需的数据。

基本 SELECT 语法结构

最简单的查询格式为:

SELECT 列名 FROM 表名;

例如,查询 user 表中所有人的姓名:

SELECT name FROM user;

若想查全部字段,用星号 * 代替列名:

SELECT * FROM user;

注意:生产环境不建议随意用 *,应明确列出需要的字段,提升性能和可读性。

带条件筛选的查询(WHERE)

用 WHERE 子句限定返回的数据范围,支持常见比较和逻辑运算符

  • 等于: WHERE age = 25
  • 范围判断: WHERE salary BETWEEN 5000 AND 10000
  • 模糊匹配: WHERE name LIKE ‘%小%’(% 表示任意字符)
  • 多条件组合: WHERE status = ‘active’ AND city IN (‘北京’, ‘上海‘)

排序与限制结果数量

查询结果默认无序,可用 ORDER BY 排序,配合 LIMIT 控制返回条数。

  • 升序(默认): ORDER BY created_at
  • 降序: ORDER BY score DESC
  • 只取前 10 条: LIMIT 10
  • 分页常用写法(跳过前 20 条,取 10 条): LIMIT 20, 10LIMIT 10 OFFSET 20

常用聚合与分组(GROUP BY)

当需统计类结果时,配合 count、SUM、AVG 等函数和 GROUP BY 使用。

  • 统计每个性别的人数: SELECT gender, COUNT(*) FROM user GROUP BY gender;
  • 筛选分组后满足条件的结果(用 HAVING): HAVING COUNT(*) > 5(不能用 WHERE,因 WHERE 在分组前执行)
  • 结合排序与限制: 查出评论数最多的前 3 个文章 ID:
    SELECT article_id, COUNT(*) AS cnt FROM comment GROUP BY article_id ORDER BY cnt DESC LIMIT 3;
text=ZqhQzanResources