主页 > 知识库 > SQL server 随机数函数

SQL server 随机数函数

热门标签:广东防封卡外呼系统原理是什么 地图标注牌 菏泽语音电销机器人加盟公司 知名电销机器人价格 分享百度地图标注多个位置 湖南电脑外呼系统平台 电销机器人公司 需要哪些牌照 长沙智能外呼系统 外呼系统改进

不过还是希望老鸟们多多指教了,现在切入正题:
随机函数: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 返回值的数据类型都与输入的数字表达式的数据类型相同。
----------------------------------------------------------------------------------
现在,各位就可以根据自己需要使用这两种方法来取得随机数了^_^
另外,还要提示一下各位菜鸟,关于随机取得表中任意N条记录的方法,很简单,就用newid():
select top N * from table_name order by newid() ----N是一个你指定的整数,表是取得记录的条数
OK,这篇文章就写到这里

您可能感兴趣的文章:
  • MySQL查询随机数据的4种方法和性能对比
  • mysql获取随机数据的方法
  • mysql优化取随机数据慢的方法
  • sqlserver 不重复的随机数
  • MySQL取出随机数据
  • 生成300个不同的随机数的SQL语句

标签:福建 美容院 商洛 天水 泉州 珠海 西宁 呼和浩特

巨人网络通讯声明:本文标题《SQL server 随机数函数》,本文关键词  SQL,server,随机数,函数,SQL,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《SQL server 随机数函数》相关的同类信息!
  • 本页收集关于SQL server 随机数函数的相关信息资讯供网民参考!
  • 推荐文章