别再怕 SQL 了!1小时学会 SELECT、JOIN、GROUP BY 核心查询

摘要

SQL(结构化查询语言)看起来总是“专业又抽象”?其实它的本质就是:用一句话,从表格中“筛”出你要的数据。

本文将用通俗易懂的语言,带你快速掌握 SQL 查询中最核心的三块内容:SELECT(怎么选)、JOIN(怎么连)、GROUP BY(怎么分组汇总)。文章专为零基础或初学者设计,带你用简单案例从小白进阶到可以独立查询数据。

博主 默语带您 Go to New World.
个人主页—— 默语 的博客 优秀内容
《java 面试题大全》
《java 专栏》
《idea技术专区》
《spring boot 技术专区》
《MyBatis从入门到精通》
《23种设计模式》
《经典算法学习》
《spring 学习》
《MYSQL从入门到精通》数据库是开发者必会基础之一~
惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕
吾期望此文有资助于尔,即使粗浅难及深广,亦备添少许微薄之助。苟未尽善尽美,敬请批评指正,以资改进。!⌨


默语是谁?

大家好,我是 默语,别名默语博主,擅长的技术领域包括Java、运维和人工智能。我的技术背景扎实,涵盖了从后端开发到前端框架的各个方面,特别是在Java 性能优化、多线程编程、算法优化等领域有深厚造诣。

目前,我活跃在CSDN、掘金、阿里云和 51CTO等平台,全网拥有超过15万的粉丝,总阅读量超过1400 万。统一 IP 名称为 默语 或者 默语博主。我是 CSDN 博客专家、阿里云专家博主和掘金博客专家,曾获博客专家、优秀社区主理人等多项荣誉,并在 2023 年度博客之星评选中名列前 50。我还是 Java 高级工程师、自媒体博主,北京城市开发者社区的主理人,拥有丰富的项目开发经验和产品设计能力。希望通过我的分享,帮助大家更好地了解和使用各类技术产品,在不断的学习过程中,可以帮助到更多的人,结交更多的朋友.


我的博客内容涵盖广泛,主要分享技术教程、Bug解决方案、开发工具使用、前沿科技资讯、产品评测与使用体验。我特别关注云服务产品评测、AI 产品对比、开发板性能测试以及技术报告,同时也会提供产品优缺点分析、横向对比,并分享技术沙龙与行业大会的参会体验。我的目标是为读者提供有深度、有实用价值的技术洞察与分析。

默语:您的前沿技术领航员

大家好,我是默语
全网搜索“默语”,即可纵览我在各大平台的知识足迹。

公众号“默语摸鱼”,每周定时推送干货满满的技术长文,从新兴框架的剖析到运维实战的复盘,助您技术进阶之路畅通无阻。

微信端添加好友“Solitudemind”,与我直接交流,不管是项目瓶颈的求助,还是行业趋势的探讨,随时畅所欲言。

最新动态:2025 年 6 月 19 日

快来加入技术社区,一起挖掘技术的无限潜能,携手迈向数字化新征程!


文章目录

    • 摘要
  • 默语:您的前沿技术领航员
    • @[TOC]
  • 别再怕 SQL 了!1小时学会 SELECT、JOIN、GROUP BY 核心查询
    • 引言:为什么要学 SQL?
    • 一、SELECT:我想从表里“选”什么?
      • 最基础的 SELECT
      • 添加过滤:WHERE 条件筛选
      • 排序:ORDER BY
      • 限制结果:LIMIT
    • 二、JOIN:从“多张表”中联合取数据
      • 场景类比:
      • INNER JOIN 示例
      • LEFT JOIN 示例
    • 三、GROUP BY:按组统计的魔法命令
      • 示例1:统计每个城市的用户数
      • 示例2:统计每个用户下了几笔订单
    • 小白速查表:常用 SQL 查询句式
    • 总结:SQL 没你想的那么难!
    • 参考资料



别再怕 SQL 了!1小时学会 SELECT、JOIN、GROUP BY 核心查询


引言:为什么要学 SQL?

你可能不是程序员,但你一定听说过数据分析、报表生成、BI 工具——而这些背后,离不开 SQL。

  • 想做数据分析?SQL 是入门第一关。
  • 想应聘产品、运营、分析岗?SQL 是面试必考题。
  • 想更快提取数据库里的有用信息?SQL 是最好用的语言。

你可以把 SQL 当作“数据库的搜索引擎”!


一、SELECT:我想从表里“选”什么?

最基础的 SELECT

SELECT name, age FROM users;

含义:从 users 表中,选择 nameage 两列。

添加过滤:WHERE 条件筛选

SELECT name FROM users WHERE age >= 18;

含义:只选择年龄大于等于 18 岁的用户。

排序:ORDER BY

SELECT name, age FROM users ORDER BY age DESC;

含义:按年龄从大到小排序。

限制结果:LIMIT

SELECT * FROM users LIMIT 5;

含义:只取前 5 条记录。


二、JOIN:从“多张表”中联合取数据

场景类比:

  • 表 A 是订单表:orders
  • 表 B 是用户表:users
  • 我想知道每个订单对应哪个用户的名字?

INNER JOIN 示例

SELECT orders.id, users.name
FROM orders
JOIN users ON orders.user_id = users.id;

含义:从 orders 表中拿订单 ID,再连上 users 表取用户名,条件是两个表的用户 ID 对得上。

✅ INNER JOIN 只返回“能对上”的行(即有匹配关系的)。

LEFT JOIN 示例

SELECT orders.id, users.name
FROM orders
LEFT JOIN users ON orders.user_id = users.id;

含义:保留所有订单,即使这个订单的用户信息在 users 里没有,也显示出来。


三、GROUP BY:按组统计的魔法命令

示例1:统计每个城市的用户数

SELECT city, COUNT(*) AS user_count
FROM users
GROUP BY city;

含义:以城市为单位,把用户“分组”,每组统计数量。

示例2:统计每个用户下了几笔订单

SELECT user_id, COUNT(*) AS order_count
FROM orders
GROUP BY user_id;

常配合的函数:COUNT()SUM()AVG()MAX()MIN()


小白速查表:常用 SQL 查询句式

功能 SQL 模板
选几列 SELECT col1, col2 FROM table
条件筛选 WHERE 条件
排序 ORDER BY col DESC/ASC
限制条数 LIMIT 数字
联表查询 JOIN 表 ON 条件
分组统计 GROUP BY 列名 + 聚合函数

总结:SQL 没你想的那么难!

  1. 想取什么字段?SELECT
  2. 想从哪张表?FROM
  3. 想怎么筛选?WHERE
  4. 需要合并表?JOIN
  5. 想做统计分析?GROUP BY

建议每天动手写几个查询句式,哪怕只是 SELECT,也会让你快速熟练。


参考资料

  1. W3Schools - SQL Tutorial
  2. LeetCode SQL 题库
  3. 《SQL 必知必会》(经典入门书)

如果你刚开始学 SQL,或者在写查询语句时总是卡住,欢迎加我微信一起讨论,学习不孤单!

我的微信:Solitudemind


如对本文内容有任何疑问、建议或意见,请联系作者,作者将尽力回复并改进;( 联系微信:Solitudemind )

点击下方名片,加入 IT 技术核心学习团队。一起探索科技的未来,共同成长。

为了让您拥有更好的交互体验,特将这行文字设置为可点击样式:点击下方名片,加入 IT
技术核心学习团队。一起探索科技的未来,共同成长。

你可能感兴趣的:(JAVA,sql,数据库)