加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码网 (https://www.900php.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何使SQL中的COUNT*飞起来

发布时间:2021-11-02 13:26:06 所属栏目:大数据 来源:互联网
导读:COUNT(*)是每个初学者的最爱,但凡漂亮的按下回车时,看着转啊转的进度条,总是有种莫名的喜感。平时总被老板催着干这干那,现在我也能指挥下电脑帮我跑跑数据!虽说平时面试官总爱问 COUNT(*) 有什么坏处啊,为什么要避免使用 COUNT(*) 这类怪问题。真要说
COUNT(*)是每个初学者的最爱,但凡漂亮的按下回车时,看着转啊转的进度条,总是有种莫名的喜感。平时总被老板催着干这干那,现在我也能指挥下电脑帮我跑跑数据!   虽说平时面试官总爱问 COUNT(*) 有什么坏处啊,为什么要避免使用 COUNT(*) 这类怪问题。真要说起来,他们也是一脸懵圈,因为面试题都有可能是网上随便摘的。   至于原理,多少人真正懂呢,真正在乎呢?   那么,COUNT(*)的性能真那么差吗?怎么才能提高性能呢!今天就盘它   已知 SQL Server 中有这样张表 (其他数据库也适用):   CREATE TABLE [dbo].[MobileLink](   [user_id] [varchar](50) NULL,   [item_id] [varchar](50) NULL,   [behavior_type] [varchar](50) NULL,   [user_geohash] [varchar](50) NULL,   [item_category] [varchar](50) NULL,   [time] [varchar](50) NULL  )  笨拙的堆表(Heap Table) 这张表没有索引,是张堆表(Heap Table). 总共有4000多万条数据。   第一次,运行 count(*)   SELECT COUNT(*) AS CNT   FROM dbo.MobileLink      可以看到运行大约花了 3 秒时间 执行计划也简单,走了全表扫描

(编辑:源码网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读