C军

不玩博客了!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年10月15日

摘要: 一、问题提出 随机数在数据库中是经常用到的系统。 例如,一个广告系统希望随机选择一个广告来显示。随机推荐相关文章等等。 在SQL Server中查找随机数最简单的方法为: SELECT TOP 1 * FROM Person ORDER BY NEWID() 以上SQL语句的执行计划如下: 以上这种方法,需要对整个表进行一次排序,而且还无法有效地使用索引。加入我们只需要前几条数据,那么好不容易对整个结果集完成了排序,但绝大多数都浪费了。 以上的方式缺点如下: 随着数据量的增加,随机数的产生会变慢。 数据主键并不连续,并且随机数生成算法并没有考虑到这一点。二、合理使用反模... 阅读全文
posted @ 2013-10-15 17:21 逆心 阅读(716) 评论(0) 推荐(0) 编辑