各位 V2EXer 好,我是黄健宏,继上次《 Redis 应用实战》赠书活动之后我又来啦!
这次给大家带来的赠书是我最新的翻译作品《 SQL 实战》,一本非常棒的 SQL/PostgreSQL/数据分析入门&进阶图书,希望大家会喜欢。
以下是本次赠书活动的具体规则:
请回复本帖,写出您或您的公司正在使用什么 SQL 系统(如 MySQL 、PostgreSQL 、Aurora 等),以及你们使用 SQL 完成什么工作(存储什么数据,实现什么模块等)
我会从大家的回复中挑选出 3~5 条我认为有趣的回复,并向这些回复的作者每人赠送《 SQL 实战》图书 1 册
本次活动到 2025 年 3 月 24 日 0 时截止,活动赠书由化学工业出版社提供,本人保留所有解释权
欢迎大家踊跃参与,分享您的有趣 SQL 故事!
了解《 SQL 实战》的更多信息请访问本书主页huangz.works/sql/,也可以直接通过京东或淘宝购买。
![]() |
1
wxyrrcj 1 天前 ![]() 我们目前主要使用 MySQL 和 达梦数据库,主要用 SQL 来完成以下工作:
数据统计与分析: 我们经常需要从海量数据中提取关键指标,生成各种统计报表。比如,通过复杂的聚合查询和窗口函数,我们能够快速计算出用户的活跃度、订单的成交率等核心数据。 逻辑实现: 在 SQL 的使用上,我们尝试过两种不同的方式: 拆分 SQL 在程序中组合逻辑:对于一些复杂的业务逻辑,我们会将 SQL 拆分成多个简单的查询,在程序中进行组合和处理。这种方式灵活性强,便于调试和维护。 完全使用 SQL 实现逻辑:对于一些需要高效执行的场景,我们会尽可能将逻辑写在 SQL 中,比如通过存储过程或复杂的嵌套查询来实现。这种方式可以减少程序与数据库的交互次数,提升性能。 数据存储与管理: 我们使用 MySQL 存储用户信息、订单数据、日志记录等结构化数据,同时通过达梦数据库处理一些对国产化有要求的业务场景。SQL 帮助我们高效地管理这些数据,确保数据的完整性和一致性。 最近我们还在探索如何优化 SQL 查询性能,比如通过索引优化、查询重写等方式来减少数据库的负载。 期待这次的《 SQL 实战》能带来更多实用的技巧和深入的知识!感谢这次活动,也希望有机会能获得赠书! |
![]() |
2
defunct9 1 天前
来一本垫桌子角
|
3
csfreshman 1 天前 ![]() 先不买了,上次买的作者的 redis 书还没看完,支持一波作者了
|
4
imicksoft 1 天前 via Android ![]() 今年还真遇到了。
开发一个小程序,做 ETF 基金和股票的交易记录,没买数据服务器,用的免费的数据库,最开始用的 wsfdb 的 mysql ,大小只有 10M ,用了一段时间,太小了后来存不进去数据了。 只好又找啊找啊,找到了 MemFireDB 网站,提供 1G 容量的 PostgreSQL ,从没有用过这种数据库,于是晚上又边学习边改代码,PostgreSQL 不区分大小写,坑了一个星期,后来才知道要加引号,花了差不多一个月刚好,MemFireDB 又不免费了,只好再找免费云数据库,重新换回了 mysql 。 [哭.gif] |
5
tangmanger 1 天前
哈哈 研究下 sql 怎么生成 shell 目录
|
6
GreysonYee 1 天前 ![]() 我与 SQL 的故事,除了开发以外。。。。。马上 4 月份自考 《数据库系统原理》了要。
|
7
qwer666df 1 天前 ![]() 主系统是 MySQL ,主要用它来存储货币流水数据。有一个业务是查询统计单日交易额。
但是这个表一直累计了一两年,大概有 20 亿条。在 MySQL 里进行大数据查询时候基本用不了。 要做一些复杂查询,查询周报的时候,需要一分钟才能出结果。要是查询跨月的数据,基本就直接就锁死数据库。 前端时间,研究了一下把数据同步到了 ClickHouse 。同样的操作在 MySQL 中需要 30 多秒的查询,在 ClickHouse 里能在大概 2 秒时间内完成,属于是保住饭碗了 |
8
FreeWong 1 天前
送我的话,我保证不用来垫桌角,认真阅读,对得起 OP 的辛苦翻译工作。
|
![]() |
9
fuchish112 1 天前 ![]() mysql ,还是期望多一点应用侧的 sql 经验,不同业务场景对 sql 运用和使用
|
![]() |
10
Dogergo 1 天前 ![]() 刚入行的时候,我所在的第一家公司,mysql 基本都要求单表查询,当时使用 PHP 来着,往往是在查完主数据之后,再查其他的附属信息,最后便利结果,把附属信息加回去。
后来去的公司,基本都是能一条 SQL 搞定的就不会多写,由于业务的复杂性增加,往往一条 SQL 需要链接 4-6 个表。直接面向 SQL 编程了属于是。 再后来,公司业务转向广告投放业务,数据量大增,我跟着做了数仓,这里吐槽一下阿里的 ADB ,一不能用联合索引,二分析个语句给出的执行过程实在是太不直观了。 到现在我也不是很明白,什么,是最好的实践,只是跟着业务的规范走。团队是什么风格,就跟着写什么风格。 |
11
limyel 1 天前 ![]() 说点题外话,每次在 x 上看作者大佬怼那些脑残真的很爽😂
|
![]() |
12
flyz 1 天前 ![]() |
![]() |
13
ourfor 1 天前 ![]() 存你想存,用你想用😂
|
14
linxb 1 天前 ![]() |
![]() |
15
zzlettle 1 天前 ![]() 个人开发者,现在主要用 postgresql ,开发 web 项目.
具体 sql 的语言基础不是很好 业务方面都是框架提供的模型然后 ORM 来做数据的操作 一直想深入学习下 sql 的知识,提升下这方面的不足. 现在很多开发 web 的人,估计都跟我一样.问 SQL 也都是知道一点基础方面的东西 平常业务都是 ORM 来操作数据库 希望能又一本好的书,把 SQL 的方面介绍的深入浅出 有理论有有实践操作 否则数据库方面越来越多的人都会依靠 ORM 来做了 |
![]() |
16
aqx 1 天前 via iPhone ![]() 不要书,单纯支持一下 op
|
17
huangm 21 小时 54 分钟前 ![]() 以前的公司多是用 MySQL ,后面自己创业开公司,就全部换成了 PostgreSQL 。因为我发现用了 PostgreSQL 之后,很多慢查询的问题都可以自然规避了,甚至在语法上的不支持就规避了程序员写出一些执行效率低的 SQL 。当然大数据的东西还是结合用了 MongoDB 来实现。
|
![]() |
18
coolloves 16 小时 6 分钟前 ![]() 公司没有 dba,阅读了带佬的说,我应该可以顶上去吧
|
![]() |
19
saxon 15 小时 25 分钟前 ![]() 公司在用 Mysql ,hive iceberg ,我们用 SQL 主要完成运营统计、QA 审计工作~ 希望中奖
|
![]() |
20
panxi 15 小时 24 分钟前 ![]() 我自学就是从 mysql 开始的, 第一个公众号也是分享 mysql 技巧的, 第一本书是 mysql 必知必会,卧槽, 这本书简直是背过了一样,那个时候太牛逼了
|
21
NoKey 15 小时 19 分钟前 ![]() 现在用的 pg
有个很麻烦的问题还没解决,每天会产生大量数据,这些数据都是要拿来汇总统计,使用方式具备关系型数据库特征,无法用 es 来装,也就是这场景下,还只能用 pg 或者 mysql 这种数据库。一天要产生几百万的数据,数据存储量也大,然后用户要看的时间跨度还挺大,分库分表都麻烦,就算分库分表,因为数据量这么大,也可能分出大量的库表出来,头疼 |
![]() |
22
lyz1990 15 小时 9 分钟前 ![]() sql 故事没有,sql 事故倒是挺多的,哈哈
|
![]() |
24
xiangbohua 14 小时 37 分钟前
这就不得不提到刚工作那会是真的没经验,到初创公司工作做了一个类似秒杀的项目,项目很小很初级,使用人也不多,个别表的数据倒是有几万,现在随便哪个开发听起来都是小儿科的东西。
一开始用卡的不行,火烧眉毛的研究,后来猛然发现没加索引啊这是,于是快速加上索引一下就流畅了。 经过那次事件之后,就找来各种数据库的书研究,到现在印象还十分深刻。 |
![]() |
25
8bit 14 小时 19 分钟前
现在用 mysql8.0 ,要向 opengGauss/Pg 迁移,想想都头大
|
26
mmc321 13 小时 50 分钟前
cy
|
27
zzf2019 13 小时 13 分钟前
我也来当个分母吧。mysql 我还真的用的蛮多的
|
![]() |
28
lazyyz 13 小时 7 分钟前
正在学习 SQL ,最近刚从图书馆里借了 MySQL 8 快速入门(视频版)和 SQL 必知必会(第 5 版),大佬的新书看上去挺适合接下去的我,哈哈
|
29
chaffy 13 小时 5 分钟前
我 shell 写得还行,sql 写得不好,但我又是一个 dba ,所以大大,我需要此书!
|
![]() |
30
psyer 12 小时 56 分钟前 via Android
正在学数仓,需要学复杂的开窗查询,连续登录,合并区间(◕_◕)/✏️ 正需要这个
|
![]() |
31
ZDM 12 小时 26 分钟前
我司部门,无数的数据模型,且复杂的查询。刚需。
|
32
fox0001 12 小时 22 分钟前 via Android
用 MySQL 做数据集合处理,一千万左右的量级,处理需要几小时。后来把数据导出,用 pandas 处理,秒出结果。
|
33
cobbage 12 小时 22 分钟前 via Android
干了一年运维优化了些查询。tob 的客户有用 oracle,mysql5-8
|
34
wukongkong 11 小时 36 分钟前 via Android
当年不会复杂 sql ,直接全部返回前端,前端处理……
|
![]() |
35
foufoufm 11 小时 35 分钟前
我们目前主要使用 MySQL 来做报表中间库:通过采集各个业务系统的数据集成到中间里,然后使用 sql 数据建模得到想要的维度数据和事实数据,最后将查询结果固化落盘下来形成结果表,最终配合 FineReport 形成领导们看到的系统报表。
核心差异点在于:因为人少,所以采取的原则是,“用空间换时间”。基本上数据查询能落盘的落盘,实现一表对一表(数据库结果表对报表),来展现报表数据,这样后期也方便维护,而存储和查询性能暂时不做考虑。特别是在成熟度模型下,目前我们仅在 LV1 的位置,能够确保数据能出、数据能准已经是超出预期的数据建设了。 具体实现中,我们通常采用从业务 DB 到中间库做查询的场景,原则上尽量消解掉长 SQL ,而是使用 CTE ,拆分成多个片段式 SQL 来方便编码和定位,但具体而言 SQL 如何编写更有规范、更有维护性这块我们还在探索,期待《 SQL 实战》能给我们带来更多的实战经验,解决传统行业数据脏乱差的问题,或提供助力! 感谢这次活动,也希望有机会能获得赠书! |
36
wxd21020 11 小时 19 分钟前
首先还是感谢 OP ,PG 数据库使用者一枚, 目前公司所有的系统应用(几百个吧),使用的全是 PG 数据库,绝大多数都是使用的 pacemaker+corosync 一主两从集群,全部是我们自己或者同事搭建运维;从以下几点说明一下有一本 PG 数据库书籍的必要性:
1.目前遇到问题基本都是问大模型,问 google ,需要一本系统的书来学习,时刻参考。 2.目前身边的同事和自己在这方面感觉也都不是很专业,需要进一步提升。 3.之前也遇到很多数据库出现问题的时候,也都是一点点摸索解决;比如数据库的一些配置,数据库使用过程中由于 sql 或者应用配置不规范导致数据库告警、崩溃等;甚至有一次集群无法启动,临时申请服务器重新搭建后进行数据迁移。 最后,即使没有获得此书,也感谢 OP 为技术 er 们提供的知识。 |
37
herm2s 6 小时 37 分钟前
我们公司主要使用的是 MySQL ,我刚加入公司时负责的是数据报表模块,经常碰到各种多表关联+大数据量查询,一行 SQL 能写到几百行,一次查询能到几十秒,尝试了各种优化,如索引分析、语句优化、读写分离、接口缓存等等,终于将查询速度优化了下来。也是在那段时间,我的 SQL 能力突飞猛进,后来我也将那个模块迁移到了列式存储数据库,算是又拓宽了技术视野。
纵观我的职业生涯,SQL 在其中扮演了十分重要的角色,陪伴着我从一个刚入行的菜鸟到高级工程师,后来我在代码设计和架构优化上学到了新的知识,反而不会再向出入行业时那样一味压榨数据库能力了,正好也希望能够获得赠书,来温故知新,补补更多的 SQL 知识。 |