动手写sql 《牛客网80道sql》

第1章:SQL编写基础逻辑和常见问题

基础逻辑

  1. SELECT语句: 选择数据表中的列。
  2. FROM语句: 指定查询将要从哪个表中检索数据。
  3. WHERE语句: 过滤条件,用于提取满足特定条件的记录。
  4. GROUP BY语句: 对结果进行分组。
  5. HAVING语句: 对分组后的结果进行条件过滤。
  6. ORDER BY语句: 对结果进行排序。

常见问题

  1. LEFT JOIN与RIGHT JOIN的区别:

    • LEFT JOIN(左连接)返回左表(表A)的所有行,即使右表(表B)中没有匹配。如果右表中没有匹配,则结果集中右表的部分将包含NULL。
    • RIGHT JOIN (右连接)则相反,返回右表的所有行,即使左表中没有匹配。如果左表中没有匹配,则结果集中左表的部分将包含NULL。
      详情见我的另一篇博客 sql join 全讲解
  2. 执行的先后次序:

    • FROM
    • WHERE
    • GROUP BY
    • HAVING
    • SELECT
    • ORDER BY
  3. 子查询的使用:

    • 子查询可以嵌套在SELECT, FROM, WHERE等语句中。
    • 子查询必须出现在圆括号内。
  4. UNION和UNION ALL的区别:

    • UNION:返回两个或多个查询的结果集的并集,去除重复行。
    • UNION ALL:返回两个或多个查询的结果集的并集,包括重复行。
  5. 索引的使用:

    • 索引可以加快查询速度,但也会减慢写操作的速度。
    • 应该在经常用于搜索、排序和分组的列上创建索引。

第2章:牛客网SQL 80道题目

完整可见 详细完整题解 这个博客

  1. 完成牛客网上的80道SQL题目,这些题目涵盖了各种难度和类型,是提高SQL技能的好方法。
  2. 在做题过程中,注意总结和回顾每个题目的解题思路和技巧。










上面的评论区


后面就不放图片了,

第3章:总结

  1. 回顾常见错误: 分析在解题过程中遇到的问题和错误,确保理解每个错误的原因。
  2. 最佳实践: 总结在编写SQL查询时的一些最佳实践,例如避免使用SELECT *,合理使用索引等。
  3. 性能优化: 学习如何优化SQL查询的性能,例如通过减少子查询的使用,优化JOIN操作等。
  4. 构建自己的查询库 : 创建一个个人SQL查询库,收集和整理在学习和实践中遇到的有用的查询。
    通过这个课程安排,您不仅可以巩固和提升您的SQL技能,还可以在实践中遇到和解决实际的问题。祝您学习愉快!
相关推荐
Java探秘者3 小时前
Maven下载、安装与环境配置详解:从零开始搭建高效Java开发环境
java·开发语言·数据库·spring boot·spring cloud·maven·idea
2301_786964363 小时前
3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
java·大数据·数据库·分布式·hbase
阿维的博客日记4 小时前
图文并茂解释水平分表,垂直分表,水平分库,垂直分库
数据库·分库分表
wrx繁星点点5 小时前
事务的四大特性(ACID)
java·开发语言·数据库
小小娥子6 小时前
Redis的基础认识与在ubuntu上的安装教程
java·数据库·redis·缓存
DieSnowK6 小时前
[Redis][集群][下]详细讲解
数据库·redis·分布式·缓存·集群·高可用·新手向
-XWB-6 小时前
【MySQL】数据目录迁移
数据库·mysql
老华带你飞6 小时前
公寓管理系统|SprinBoot+vue夕阳红公寓管理系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot·课程设计
我明天再来学Web渗透7 小时前
【hot100-java】【二叉树的层序遍历】
java·开发语言·数据库·sql·算法·排序算法
Data 3177 小时前
Hive数仓操作(十一)
大数据·数据库·数据仓库·hive·hadoop