首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于一个 SQL 随机 函数的有关问题

2012-04-07 
关于一个 SQL 随机 函数的问题SQL codewith t1 as(select Row_number() over(order by id) as B,fidfrom O

关于一个 SQL 随机 函数的问题

SQL code
with t1 as(select Row_number() over(order by id) as B,fid  from Order_Main where ov_bid like'%是%'  and OV_CaoDan<>'废单'  and  OV_CaoDan<>'签单'and fstype<>3 and ftradetype in (2))select  fid      from t1   where B in( cast(ceiling(rand() * (select count(*) from t1)  )as int)  )


  随机的可能性 很小, 有时 还会跑 出 空值 , 怎么 能让 随机可能性 很大, 又不出空值 。 。。?

[解决办法]
SQL code
select  top fid      from t1   order by newid()
[解决办法]
直接用newid()嘛,还编号干啥
SQL code
select top1 fid  from Order_Main where ov_bid like'%是%'  and OV_CaoDan<>'废单'    and  OV_CaoDan<>'签单'and fstype<>3 and ftradetype in (2))order by newid()
[解决办法]
探讨
问一下, 如果 跑出空值,就 返回 重新 跑, 直到 跑出值, 这个怎么做

热点排行