SQL 入门的必读好书

2023-11-19

点击蓝色“有关SQL”关注我哟

加个“星标”,天天与10000人一起快乐成长

最近,很多朋友来问我,有没有入门 SQL 的好书。

与这些朋友聊天发现,大部分人都没有系统学过计算机专业的专修课。有从物流转行的,有从会计专业扩展的,还有从运维行业转岗到数据分析的。

今天就来推荐一本学 SQL 的好书。

不管你之前从事什么行业,对计算机编程有多少了解,这本书都能帮你在 1-2天内,迅速建立起 SQL 的语感,为你揭开 SQL 开发的神秘面纱。

这本书也是我第一次读,看完大概花了 1 个小时。

当然,我这不是凡尔赛,不是要告诉你它很简单。别看我用 1个小时,你就觉得你也可以很快入手,分分钟去大厂拿 45W 的年薪。

没那么容易,10 年前的我,学好里面的内容,至少也得全身心投入,死磕3-4个礼拜,等价于 120 个小时。

这120个小时,够得上大学的一门专业课了。

当然看完书,不是最主要的目的,最重要的是练!

迅速看完本书后,我又做了两件事:安装了 PostgreSQL,安装 DBeaver 来连接 PostgreSQL.

豪不夸张的说,安装 PostgreSQL 必看书时间还长。涉及到 Linux 上安装软件,命令行,修改用户权限,设置防火墙,配置数据库文件等等,都极大地消耗你的耐心。

不过,这个过程是真的很值。多动手安装几遍,下次你再学 Oracle, MySQL 的时候,就不会那么痛苦了。强烈建议,自己动手,不要怕麻烦。

送你一个锦囊,在 word 里,记下你每一步的操作。尤其是出错的部分,更加要不厌其烦的详细记录。

连数据库安装都搞不定,那趁早别干这行了,真的,不适合你!

后台回复 PostgreSQL, 可得 DBeaver 编辑器。我猜,很多朋友,拼对 PostgreSQL 都很难。

那么,为什么我要安装 DBeaver 呢?

对于初学者来说,命令行编程十分不友好。编辑 SQL 不方便,结果输出堪比乱码,如果每做一道题都要受到这些暴击,很难学得快。

所以,强烈建议安装一款趁手的 SQL 编辑器。

DBeaver 堪称数据库界的神兵利器。无论是 RDBMS, NoSQL, NewSQL, 还是 Hadoop, Hive, Spark,Clickhouse, 没有它连不上的。如果连不上,不用怀疑,一定是你的问题!

上一次,我在测试 clickhouse 的时候,用 DBeaver 连过 MySQL, SQL Server 以及 Clickhouse. 

我用一个实验,证实了Clickhouse的凶残性能

这次,我依然用它,来连接 PostgreSQL, 依旧给力

当然你不一定非用 PostgreSQL,Oracle, MySQL, SQL Server等传统的关系型数据库都能用。

本书最大的特色,就是无论你用哪种关系型数据库,所讲的例子都适合你用。如果某语法只支持特定的数据库,还会用图表标明:

在行家里手看来,SQL 是最简单不过的编程语言。是,我承认,花上1-2个礼拜,再小白,也能写出个漂亮的 CRUD 语句来。

比如 SELECT, UPDATE, DELETE, INSERT,照书中的例子瞧一瞧,你半天就懂,怎么回事了。

但本书又不是一本特别简单教语法的书。聚合,分组,集合运算,窗口函数,都是比较实用的进阶知识。

就拿看电影来说,看过的电影都成了你的电影数据库。

2020年,你看了多少部电影,你可以用聚合函数算出来;

假设你看了 50 部电影,那有多少部是喜剧片,又有多少是悬疑片等等,可以用分组算出来;

某天和基友吃饭,了解到他看了80部电影,于是你可以用集合运算,算下他比你多看了哪些;

于是你俩又一起讨论,喜剧片里面,非看不可的是那三部。悬疑片,哪五部必看。这些可以用窗口函数来算。

SQL 处理数据能力是强,几百万数据处理毫不费劲,还能用来做数据挖掘。但巧妇难为无米之炊,没有数据,SQL 再强大,也发挥不出来。

所以,处理,分析程序再强,也需要有管道把数据流进来。于是,书中还给出了与数据库交互的方法。比如 c# 的 Ado.net, Java 的JDBC 等。

本书涵盖了 SQL 的知识体系,虽然小,但面向初学者已经非常全面了。我认为,值得一读。

--完--

往期精彩:

本号精华合集(三)

如何写好 5000 行的 SQL 代码

如何提高阅读 SQL 源代码的快感

我在面试数据库工程师候选人时,常问的一些题

零基础 SQL 数据库小白,从入门到精通的学习路线与书单

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL 入门的必读好书 的相关文章

随机推荐

  • (手工)【sqli-labs32-38】宽字节注入、报错回显、字符/数字型注入

    目录 一 推荐 二 手工 SQL注入基本步骤 三 Less32 GET Bypass custom filter adding slashes to dangerous chars 3 1 简介 宽字节注入 报错回显 字符型注入 3 2 第
  • JVM简介说明

    转自 JVM简介说明 下文笔者讲述JVM的简介说明 如下所示 JVM简介 JVM的功能是Java应用程序的运行环境 它是Java虚拟机 JVM用于运行java的字节码文件 JVM可以将字节码转换为硬件 操作系统指令 JVM用于同操作系统内层
  • 【HJ31】 单词倒排

    题目描述 对字符串中的所有单词进行倒排 说明 1 构成单词的字符只有26个大写或小写英文字母 2 非构成单词的字符均视为单词间隔符 3 要求倒排后的单词间隔符以一个空格表示 如果原字符串中相邻单词间有多个间隔符时 倒排转换后也只允许出现一个
  • ubuntu 串口助手通信收发数据不一致

    文章目录 问题背景 一 解决方案 1 直接更换硬件 靠这个解决的 2 其他参考 总结 问题背景 主机1 win10笔记本电脑 主机2 ubuntu16 04的宸曜工控机 主机3 ubuntu14 04的一个小盒子 串口助手 cutecom
  • pmd java规则_静态代码扫描 (一)——PMD 自定义规则入门

    阅读该文章前 最好已经对 PMD 有了初步的认识和了解 可参考静态分析工具 PMD 使用说明 准备工作 首先在PMD 官网下载最新版本的文件 目前最新版本是 5 4 1 下载 pmd bin 5 4 1 zip 和 pmd src 5 4
  • QT串口助手的实现

    serial c include serial h include ui serial h serial serial QWidget parent QWidget parent ui new Ui serial ui gt setupUi
  • 【数据库】MySQL三大日志:binlog、redo log和undo log

    MySQL三大日志 binlog redo log和undo log 日志是mysql数据库的重要组成部分 记录着数据库运行期间各种状态信息 mysql日志主要包括错误日志 查询日志 慢查询日志 事务日志 二进制日志几大类 作为开发 我们重
  • 土壤含水量仪的监测方法

    土壤含水量监测仪对土壤内部水分含量情况进行监测 可实现对灾害隐患点土壤含水量的长期实时监测 仪器主机采用低功耗设计 工作功耗可达毫瓦级 根据滑坡隐患点的特点 仪器主机采用多通道设计 可根据实际情况接驳1 4路土壤含水量传感器对监测点不同深度
  • Python安全攻防之第二章Python语言基础

    2 3 Python模块的安装与使用 python模块的安装 pip3 install 模块名称 py 3 m pip install 模块名称 python模块的导入与使用 1 Import模块名称 采用 Import模块名称 方式时 需
  • Shell中的算术运算

    let expr bc都是在Bash shell环境中进行数学运算时我们会用到的工具 一 整数运算 let 当使用let时 变量名之前不能再添加 用法 var1 2 var2 3 let result var1 var2 echo resu
  • 一文搞懂积分不等式证明(积分证明题总结笔记3/3)

    积分证明题是考研中难度较大的板块 很多学弟学妹们希望我出一篇总结文章 故作本文 希望对大家有所帮助 本文所涉及题目 均是来自市面上常见题册 李林880 张宇1000题 汤家凤1800等 由于内容较多 故分为三部分 等式证明 点击进入 由积分
  • Qt 绘图设备,QPixmap 和QImage 相互转化

    Qt的绘图系统允许使用相同的API在屏幕和其他打印设备上进行绘制 整个绘图系统基于 QPainter QPainterDevice 和 QPaintEngine三个类 QPainter用来执行绘制的操作 QPaintDevice是一个二维空
  • ospf和mgre的综合应用

    1 R6为ISP只能配置IP地址 R1 R5的环回为私有网段 首先划分好IP地址 如下图所示 然后对各个环回和接口进行IP配置 如下面所示 对r1 r1 int l0 r1 LoopBack0 ip add 192 168 1 1 24 r
  • Mybatis-plus查看完整执行sql

    Mybatis plus查看完整执行sql application properties 文件 mybatis plus configuration log impl org apache ibatis logging stdout Std
  • Redis-Sentinel(哨兵模式),看这篇就够了哦

    文章目录 简介 启动并初始化Sentinel 初始化Sentinel服务器 替换普通Redis代码为Sentinel的专用代码 初始化 Sentinel 状态 初始化Sentinel监视的主服务器列表 创建连向主服务器的网络连接 获取主服务
  • 二进制兼容与Qt的D指针

    二进制兼容的定义 一个连接到旧版本的动态库的应用程序 无需重新编译就可以用新版本的动态库运行 则这个库被认为是二进制兼容的 一个连接到旧版本的动态库的应用程序 无需修改源码单需要重新编译后可以用新版本的动态库运行 则这个库被认为是源码兼容的
  • java版spring cloud+spring boot 直播电商 社交电子商务平台

    涉及平台 平台管理 包含自营店面 商家端 PC端 手机端 买家平台 PC端 H5 公众号 小程序 APP端 IOS Android 微服务 核心思想 分布式 微服务 云架构 模块化 原子化 持续集成 集群部署 开发模式 代码生成工具 驱动式
  • 【Java 数据结构】单链表与OJ题

    篮球哥温馨提示 编程的同时不要忘记锻炼哦 暮色降临 冲一杯咖啡 目录 1 什么是链表 2 实现一个单向非循环链表 2 1 实现前的约定 2 2 addFirst 方法 2 3 addList 方法 2 4 addIndex 方法 2 5 c
  • SpringBoot 集成积木报表

    前言 积木报表是jeecg的一款开源但代码不开源的一款自定义报表 可以基于 网页灵活调整报表的布局 样式等内容 无需编程 专为企业数据分析 报表制作而设计 降低管理人员汇总制作报表的门槛 解决各类日常管理和 汇报的难题 但是因为代码不开源所
  • SQL 入门的必读好书

    点击蓝色 有关SQL 关注我哟 加个 星标 天天与10000人一起快乐成长 最近 很多朋友来问我 有没有入门 SQL 的好书 与这些朋友聊天发现 大部分人都没有系统学过计算机专业的专修课 有从物流转行的 有从会计专业扩展的 还有从运维行业转