对于SQL 随机抽样我们常想到的就是newid(),但如果对于一个在百万、千万甚至更大海量数据表中抽样的话,简单的newid(),其性能,效率就不是很理想了。所以在这里有必要讨论一下,择优而用。

long_goods是一个百万数据的表,Ctrl+L执行以下语句:

--id_index是我为主键加的一个非聚焦索引

SELECT top 1  * FROM long_goods order by newid()

--查询开销 43%

SELECT top 1  * FROM long_goods with(index=id_index) order by newid()

--查询开销 54%

select top 1 * from long_goods where id=(select top 1 id from long_goods order by newid())

--查询开销 1%

select top 1 * from long_goods where id=(select top 1 id from long_goods with(index=id_index) order by newid())

--查询开销 1%

虽然第三个与第四个的开销是一样,但实际应该是第四种优于第三种。

如果MS SQL2005升级到支持 TABLESAMPLE 的话,以下语句的抽样执行效率可为最优的

SELECT * FROM long_goods TABLESAMPLE SYSTEM (10 PERCENT)

呵呵..下班了,至于其中原因,下次有空再续.

SQL 随机抽样的总结相关推荐

  1. java 必备面试必备

    1.JDK 和 JRE 有什么区别? JDK(Java Development Kit),Java开发工具包 JRE(Java Runtime Environment),Java运行环境 JDK中包含 ...

  2. sql随机抽取数据50条_MySQL中随机抽样

    2.9 随机抽样 在审计或IT审计中,常常使用抽样,也就是对具有审计相关性的总体中低于百分之百的项目实施审计程序,使所有抽样单元都有被选取的机会,为注册会计师针对整个总体得出结论提供合理基础.简单来说 ...

  3. Task01c:随机抽样与卡方检验的SQL实现

    Task01c:随机抽样与卡方检验的SQL实现 需要的工具及基础学习内容 - 工具: MySQL[先过一遍书,代码准确性具体还得二期编辑,希望用MySQL] 书籍:<数据分析技术 使用SQL和E ...

  4. hive sql 学习笔记

    1.coalesce 语法: COALESCE ( expression [ ,...n ] ) 参数: expression 任何类型的表达式. 返回类型: 返回数据类型优先级最高的 express ...

  5. 18.Mysql SQL优化

    18.SQL优化 18.1 优化SQL语句的一般步骤 18.1.1 通过show status命令了解各种SQL的执行频率 show [session|global] status; -- 查看服务器 ...

  6. 想学数据分析但不会Python,过来看看SQL吧(上)~

    作者:贾胜杰,硕士,退役军人,电气工程专业,现成功转行K12领域数据挖掘工程师,不仅在数据清理.分析和预测方向,而且在自制力和高效学习方面都有丰富经验. 编辑:王老湿 SQL SQL基础:语法,检索, ...

  7. hive 日期函数_数据分析面试必备——SQL窗口函数你会了吗?

    之前写过一篇sql的文章,面向基础的sql操作(无眠:数据分析面试必备--SQL你准备好了吗?),目前已经有12000+收藏(收藏是点赞的5倍,你们可真狠心哪),也可以看出众多同学对sql学习的热情. ...

  8. Postgresql学习笔记之——SQL 执行计划

    一.执行计划的解释 1.explain 命令 语法: EXPLAIN [ ( option [, ...] ) ] statement EXPLAIN [ ANALYZE ] [ VERBOSE ] ...

  9. hive sql 分组随机取数

    问题描述(举例): 表结构(students_article): student_id, article id_1,article_1 id_1,article_2 id_1,article_3 id ...

最新文章

  1. 关于page object(PO)模型的介绍
  2. socket的三次握手
  3. 号外号外!RancherOS v1.2.0发布啦!
  4. ASP.NET Core WebAPI中的分析工具MiniProfiler
  5. tool class
  6. linux 进程与锁,linux 中的进程与锁
  7. python中的内置函数返回元素_Python内置函数_________用来返回数值型序列中所有元素之和。...
  8. 像素级复制!荣威R品牌“撞车”小鹏P7剪刀门,还是手动的?
  9. 力扣-169 多数元素
  10. java中常用的类——System类
  11. 弦图(Echarts)
  12. 香橙派 OrangPi PC 安装Lakka游戏系统及使用指南
  13. Chrome 浏览器关闭了360主页防护后每次打开仍然是360导航问题排查与处理方法,不卸载360流氓软件解决chrome浏览器主页锁定问题
  14. ubuntu上打开md文件_Ubuntu 使用教程.md
  15. 简单文本分割器V1.0发布(包括源码)
  16. 控制面板打开后立即自动关闭
  17. 2048游戏python源代码_python pygame实现2048游戏
  18. MIMO技术与链路容量
  19. STM8应用笔记STM8开发环境
  20. Rasa原文--训练NLU数据

热门文章

  1. 英语学习单词篇(19)
  2. 第二届计算机辅助教育国际大会,【回看】2019年第二届翻译教育国际研讨会 机助译员训练 (CATT): 人机之间...
  3. linux挂载磁盘只如何改为读写
  4. RocketMq客户端日志参数设置
  5. R语言入门 Chapter05 | 因子
  6. POS/CPOS基础知识
  7. 常用的一些javascript小技巧(收藏http://www.car371.com/article.asp?id=13)
  8. 人工智能之语音合成,语音识别
  9. GitHub 上的大佬们打完招呼,会聊些什么?
  10. excel按颜色求和,终于有最简单的方法了,建议收藏