一、
rand():生成随机数,像0.36361513486289558
floor(): 返回小于或等于所给数字表达式的最大数
ceiling():返回大于或等于所给数字表达式的最小数
cast() :生成整数
注:(FLOOR 和 CEILING 返回值的数据类型都与输入的数字表达式的数据类型相同。 )
例子:
1、对于数字表达式 12.9273,CEILING 将返回 13,FLOOR 将返回 12
2、
0至N-1之间,如cast( floor(rand()*100) as int)就会生成0至99之间任一整数
1至N之间,如cast(ceiling(rand() * 100) as int)就会生成1至100之间任一整数
二、sql中两个方法
newid()
随机取得表中任意N条记录的方法(N自己定)
用法:select top N * from table_name order by newid()
round()
ROUND 函数用于把数值字段舍入为指定的小数位数。
SQL 中用法
SELECT ROUND(column_name,decimals) FROM table_name
column_name 必需。要舍入的字段。
decimals 必需。规定要返回的小数位数。
例如:
1、SELECT ROUND(15.258, 1) 结果是:15.300
2、SELECT @Result = ROUND(((@Upper - @Lower -1) * RAND() + @Lower), 0)可以得到一个[@Lower,@Upper)区间内的数,即最小是@Lower,最大是@Upper-1之间的随机数。