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

sql 的随机函数newID()和RAND()

sql server的随机函数newID()和RAND()  
  SELECT * from Northwind..Orders ORDER BY NEWID()
  --随机排序
  SELECT TOP 10 * from Northwind..Orders ORDER BY NEWID()
  --从Orders表中随机取出10条记录  
  示例  
  A.对变量使用 NEWID 函数
  以下示例使用 NEWID() 对声明为 uniqueidentifier 数据类型的变量赋值。在测试 uniqueidentifier 数据类型变量的值之前,先输出该值。
  -- Creating a local variable with DECLARESET syntax.
  DECLARE @myid uniqueidentifier
  SET @myid = NEWID()
  PRINT 'Value of @myid is '+ CONVERT(varchar(255), @myid)
  下面是结果集:
  Value of @myid is 6F9619FF-8B86-D011-B42D-00C04FC964FF
  注意:
  NEWID 对每台计算机返回的值各不相同。所显示的数字仅起解释说明的作用。  
  随机函数:rand()
  在查询分析器中执行:select rand(),可以看到结果会是类似于这样的随机小数:0.36361513486289558,像这样的小数在实际应用中用得不多,一般要取随机数都会取随机整数。那就看下面的两种随机取整数的方法:   
  1、
  A:select floor(rand()*N) ---生成的数是这样的:12.0
  B:select cast( floor(rand()*N) as int) ---生成的数是这样的:12   
  2、
  A:select ceiling(rand() * N) ---生成的数是这样的:12.0
  B:select cast(ceiling(rand() * N) as int) ---生成的数是这样的:12   
  其中里面的N是一个你指定的整数,如100,可以看出,两种方法的A方法是带有.0这个的小数的,而B方法就是真正的整数了。
大致一看,这两种方法没什么区别,真的没区别?其实是有一点的,那就是他们的生成随机数的范围:
  方法1的数字范围:0至N-1之间,如cast( floor(rand()*100) as int)就会生成0至99之间任一整数
  方法2的数字范围:1至N之间,如cast(ceiling(rand() * 100) as int)就会生成1至100之间任一整数
  对于这个区别,看SQL的联机帮助就知了:  
  比较 CEILING 和 FLOOR
  CEILING 函数返回大于或等于所给数字表达式的最小整数。FLOOR 函数返回小于或等于所给数字表达式的最大整数。例如,对于数字表达式 12.9273,CEILING 将返回 13,FLOOR 将返回 12。FLOOR 和 CEILING 返回值的数据类型都与输入的数字表达式的数据类型相同。
  现�


相关文档:

SQL Server2000 解析XML

DECLARE @HDOC INT --文档句柄
DECLARE @XMLSTRING VARCHAR(200) --XML字符串
SET @xmlString ='<?xml version="1.0"?>
<ROOT>
<USER ID="1" Name="SBQCEL"/>
<USER ID="2" Name="PEACELI"/>
<USER ID="3" Name="SHEEPCHANG"/>
</ROOT>'
--使用系统存储 ......

自定义多参数Sql聚合函数

Creating a CLR user define aggregate (part 2). Use multiple columns in the aggregation function
In part 1 we created a nice user defined aggregate. Now we are going to make it more sophisticated and let its value depend on two parameters ShipCountry and ShipShipCity. You might try having two parame ......

用SQL查询分析器操作Excel

用SQL查询分析器操作Excel
http://hi.baidu.com/bilbit/blog/item/adf7a33427af52bed0a2d38e.html
SQL SERVER 和EXCEL的数据导入导出
1、在SQL SERVER里查询Excel数据:
-- ======================================================
SELECT *
from OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\boo ......

SQL查询重复记录

SQL查询重复记录
http://m.cnblogs.com/15628/1534873.html
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
[图片]select * from people
[图片]where peopleId in (select   peopleId  from   people  group  by   peopleId  ......

SQL数据库不同备份名称存放不同路径还原方法

/*------------------------------------------------------------------
--  Author : htl258(Tony)
--  Date   : 2010-04-15 22:07:01
--  Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
    Jul  9 2008 14:43:34
    Copy ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号