使用SQL语句产生随机文章

作者:动易网络 来源:本站原创 点击数: 发布时间:2012年09月28日

首先解释sqlround(),floor(),ceiling()函数的用法和区别?

round() 遵循四舍五入把原值转化为指定小数位数,如:round(1.45,0) = 1;round(1.55,0)=2

floor()向下舍入为指定小数位数 如:floor(1.45,0)= 1;floor(1.55,0) = 1

ceiling()向上舍入为指定小数位数 如:ceiling(1.45,0) = 2;ceiling(1.55,0)=2

#(0.5-rand())*2可以得到-1 至 +1的随机数 
#(0.5-rand())*2*5可以得到-5 至 +5的随机数 



产生随机数字: 

select cast(floor(rand()*100) as int)

select CAST(CEILING(RAND()*100) AS INT)

随机查询

order by newid() 

结合系统,可以实现随机显示不同的文章

Eg:

select top 10 * from pe_commonmodel order By newid()  

(可以产生多篇随机文章)

Eg:

select * from pe_commonmodel where generalid= cast(floor(rand()*1000) as int) 

(只产生一篇范围1~1000