两个数之间的随机整数

公式

#[a,b]的整数(a>0,b>0或a<0,b>0),注意:b+1也能出现,但几率太小可以忽略不计,与MYSQL策略有关。
SELECT FLOOR(RAND()*(b-a+1))+a

#[a,b]的整数(a<0,b<0),注意:a+1也能出现,但几率太小可以忽略不计,与MYSQL策略有关。
SELECT FLOOR(RAND()*(ABS(a)-ABS(b)+1))+a

分析


#[0,1.0]之间的随机浮点数
SELECT RAND()
#[0,9]的整数,注意:10也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*10)
#[1,10]的整数,注意:11也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*10)+1
#[12,15]的整数,注意:16也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*4)+12
#[-2,4]的整数,注意:5也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*7)-2
#[-6,-5]的整数,注意:-4也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*(2))-6
#[12,13]的整数,注意:b+1也能出现,但几率太小可以忽略不计
SELECT FLOOR(RAND()*2)+12

#去除小数部分,保留整数,取下限整数。
#结果:2
SELECT FLOOR('2.9')
#结果:2
SELECT FLOOR('2.1')
#
SELECT FLOOR('-2.1')
#去除小数部分,取上限。
#结果:3
SELECT CEIL('2.8')
#结果:3
SELECT CEIL('2.2')
#结果:2
SELECT CEIL('2.0')
#结果:-2
SELECT CEIL('-2.9')
#结果:3
SELECT CEILING('2.8')
#结果:3
SELECT CEILING('2.2')
#结果:2
SELECT CEILING('2.0')
#结果:-2
SELECT CEILING('-2.1')
#截取数据,直接去除多余部分不进1。参数描述:(数据,保留的位数)。
#结果:3.1415
SELECT TRUNCATE('3.1415926','4')
SELECT TRUNCATE('-3.1415926','4')
#四舍五入保留整数,不看符号四舍五入,参数描述:(数据,[保留的位数])
#结果:3
SELECT ROUND('3.1415926')
#结果:4
SELECT ROUND('-3.12')
#结果:4
SELECT ROUND('3.82')
#结果:-4
SELECT ROUND('-3.82')
#结果:3.142
SELECT ROUND('3.1415926','3')
#结果:-3.142
SELECT ROUND('-3.1415926','3')
#四舍五入保留整数。参数描述:(数据,保留的位数)
#3.142
SELECT FORMAT('3.1415926','3')
#-3.142
SELECT FORMAT('-3.1415926','3')
发布了146 篇原创文章 · 获赞 151 · 访问量 54万+

猜你喜欢

转载自blog.csdn.net/qq_39706570/article/details/105552783