列出 SQL 数据库行数最多的前十张表,你要几秒?


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


想到这问题,是在多年前的 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 你一份。


640?wx_fmt=png



640


《影》非常好看,互联网时代我觉得每个人都需要一个“影”,欢迎你来


640?wx_fmt=jpeg


猜你喜欢:


SQL 人要敢于说不

BI, 数据仓库,ETL, 数据开发,有什么区别?

SQL 数据库学习路线推荐


640?wx_fmt=jpeg


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dbLenis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值