易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL 随机抽样的总结

对于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 Server服务器角色与数据库角色区别

固定服务器角色
sysadmin 可以在 SQL Server 中执行任何活动。
serveradmin 可以设置服务器范围的配置选项,关闭服务器。
setupadmin 可以管理链接服务器和启动过程。
securityadmin 可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。
processadmin 可以管理在 SQL Server 中运行的进程。
......

SQL Server 2005 连接字符串

原文转自 http://blog.csdn.net/jyh_jack/archive/2008/04/07/2257512.aspx
SQL Native Client ODBC Driver
 
标准安全连接
   
Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
 
您是否在使用SQL Server 2005 Express? 请 ......

初学PL/SQL的一些基本知识

 1,一个完整的PL/SQL 语句由三个部分组成。
             declare
                   声明部分,定义变量,数据类型,异常,局部子程序等。
 &nb ......

PL/SQL 控制结构

在PL/SQL中引入了控制结构,包括选择结构,循环结构和跳转结构
一 选择结构
1,IF 语句
 
    在PL/SQL中,选择结构可以通过if语句来实现,也可以通过Case语句(oracle9i中)
    利用if语句实现选择控制的语法为:
     if condition1 then statements1 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号