sql得到今日8点_列出 SQL 数据库行数最多的前十张表,你要几秒?

2e2e187cb012da218f350d852535eed4.png

简单的一个问题,如果你不看接下来的答案,试着想下你会怎么办

想到这问题,是在多年前的 DB 开发例会上。

7 人出席,分别是团队负责人,资深 DB 开发(8 年以上)3 人。3 人 SQL 骨干( 4 年以上)。

“我们的数据库,最大的表有多少数据了?” 负责人问

“大概 2 亿左右”,骨干 C 说

“那么超过 1 亿的有哪些表, 我要个清单”

“可以现场查一遍”,骨干 B 不示弱

“查询怎么写?来 show 一把”

“用 Count 把每个表过一遍”,骨干 A 也说话了

“Talk is cheap, show me the code ” ,负责人等不及了

“ 好像在 Information_schema 下面有类似的视图”, 资深 DB 开了个头,“具体是哪个 Google 下”

(省去 10 分钟...)

得到一个脚本,大约是用 count(*) 来统计每个表的行数,运行了 3 、5 分钟,得到了前 10 的大表。

接着会议继续.... ( 其实我已经没有耐心听了,我只是旁听而已,怕笑趴下....)

其实,写好 SQL 真是第一步,有人戏称一周精通 SQL,我真不好意打击他们。这焦虑给得恰到好处,毕竟人家是要卖课的。没有做出你做不到的事情,怎么好意思收你钱?装也要装出来,20 岁大二,面试百轮,斩获互联网公司年薪 XX 万 Offer,穷游 60 多个国家,练得一身腱子肉。羡慕吧,想学吧,开个微信群收徒。

这个社会就是这样,大部分人都向权威低头!通过这些快速课程加上面试技巧,很快拿到了万把块的工资,过上逍遥的生活,简直春风得意,自觉高人一等。所以造就了上述的资深 DB,纯粹是 YY,满足在自己的幻想里。

我相信我的读者是精明的!

话再说回来,如何快速知道体量最大的前十张表?查 statistics

在学完 SQL 的使用基础上,深入一步就是去学数据库管理方向上的知识。这才是触及数据库核心的事情。就拿 statistics 来说,本质上是给数据库的一些统计信息做实时更新,方便执行计划的选择,类似表有多少数据量,都应该实时更新在元系统表,我们找到这些元数据表,很快就可以得到正确信息。这意味着可以节省你的时间。

另外,超过 5 个人的会议,我认为都是谋财害命!

这事丢给合格的 DBA,很快漂亮的给你办好,每天都可以 mail 你一份。

10b9b17eb2539745a583f751ccc2a8fd.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值