MSSQL中的随机函数
随机函数: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是一个你指定的整数,表是取得记录的条数.
MSSQL中的随机函数相关推荐
- (转)MSSQL中如何用SQL清除所有表的数据(downmoon)?
有朋友问起:MSSQL中如何用SQL清除所有表的数据?这个需求分三种类型: 第一:只要数据库中表是空的: 第二:表是空的,并且自增长列可以从1开始增长. 第三:表是空的,并且自增长列可以从1开始增长, ...
- [转]树结构表递归查询在ORACLE和MSSQL中的实现方法
树结构表:记录树形数据的二维数据表,包含"本节点ID"和"父节点ID" 经常需要进行递归查询某个节点下的所有节点数据 以下是分别在ORACLE和MSSQL中的实 ...
- mysql xp cmdshell_LOAD语句:利用MSSQL中的xp_cmdshell功能,将指定文件夹下的指定文件,生成mysql的LOAD语句...
LOAD语句:利用MSSQL中的xp_cmdshell功能,将指定文件夹下的指定文件,生成mysql的LOAD语句 LOAD语句:利用MSSQL中的xp_cmdshell功能,将指定文件夹下的指定文件 ...
- oracle 树形结构表,树结构表递归查询在ORACLE和MSSQL中的实现方法
树结构表:记录树形数据的二维数据表,包含"本节点ID"和"父节点ID" 经常需要进行递归查询某个节点下的所有节点数据 以下是分别在ORACLE和MSSQL中的实 ...
- mysql tiqu mssql_mysql数据表如何导入MSSQL中
本案例演示所用系统是windows server 2012.其它版本windows操作系统类似. 1,首先需要下载mysql odbc安装包. http://dev.mysql.com/downloa ...
- 概念:伪随机数、种子以及C中的随机函数
概念:伪随机数.种子以及C中的随机函数 2007年12月03日 下午 02:28 首先需要声明的是,计算机不会产生绝对随机的随机数,计算机只能产生"伪随机数".其实绝对随机的随机数 ...
- 随机模拟在多排服务器上的应用,在Excel中应用随机函数模拟多服务台单队列排队系统...
在Excel中应用随机函数模拟多服务台单队列排队系统 [摘 要] 计算机模拟是研究排队论问题的一个重要手段,可以选择的软件有很多,本文提出了一种基于Excel的简便方法.选用Excel中的随机函数,配 ...
- 学校举办朗诵比赛,邀请了10位评委为每一名参赛选手的表现打分,打分由random库中的随机函数进行,打分范围在[80,100]之间,打分的结果存放在列表lst_score中。编写程序,根据以下规则计算
题目 学校举办朗诵比赛,邀请了10位评委为每一名参赛选手的表现打分,打分由random库中的随机函数进行,打分范围在[80,100]之间,打分的结果存放在列表lst_score中.编写程序,根据以 ...
- mssql 中msdb 权限说明
msdb MSDB是Microsoft SQL Server中一个系统数据库,它存储了SQL Server代理作业,备份和还原,数据库维护计划,邮件,日志和数据库相关的其他信息.MSDB数据库包含了许 ...
最新文章
- matlab 转动惯量 叠加,一种汽车动力总成系统转动惯量合成方法
- ZOJ 1696 Viva Confetti 计算几何
- SAP 前端技术的演化史简介
- 【ARC103D】Distance Sums【树论】【构造】
- c#扫描图片去黑边(扫描仪去黑边)
- python prettytable_让python的print变得更好看——prettytable和colorama
- sql 日期间隔排查双休_免费教程《图解SQL面试题》
- 语音识别开源项目汇总
- android软路由,软路由体验 篇一: 100块钱还要啥自行车,软路由初体验
- 迭代法求解贝尔曼期望方程的数学证明
- 001-http-总览、文件配置、常用http client、http连接池
- MT 202 COV General Financial Institution Transfer 覆盖一般金融机构转账
- 三菱PLC以太网MC通讯协议模块
- Proof Compression
- 年轻代和年老代分配过大 或 过小
- Flutter 自定义动画 — 数字递增动画和文字逐行逐字出现或消失动画
- biubiu加速器下载安装包路径
- 直播教育平台开发—老师学生上课学习的好帮手
- 尚硅谷JVM下篇:性能监控与调优篇_02_JVM监控及诊断工具-命令行篇
- SwinUnet官方代码训练自己数据集(单通道灰度图像的分割)