首 页 网站运营 网络编程 网页制作 图象媒体 数据库 建站资源 网管专区 下载专区 最新资讯
IT学堂|红色黑客联盟
设为首页
加入收藏
联系站长
您所在的位置:首页>数据库>Mysql>文章内容
如何随机选取n条记录或者对记录作随机排序?
来源: 作者: 发布时间:2007-04-13

. 如何得到随机排序结果?

A. 要得到随机排序的列,或者返回x条随机选择的列,你可以使用随机数。但是RAND函数在一个查询中只能返回一个结果。你可以在NOWID函数返回的列上做ORDER BY。请看示例:

SELECT *
FROM Northwind..Orders
ORDER BY NEWID()

SELECT TOP 10 *
FROM Northwind..Orders
ORDER BY NEWID()

这段话翻译得真是费劲,干脆不管原文,直接意译了。
不过提醒大家注意,这种方法是要对整个表扫描,然后产生一个计算列再排序的,最好不要对大的表作这样的操作,否则会很慢的。


Q. How can I randomly sort query results?

A. To randomly order rows, or to return x number of randomly chosen rows, you can use the RAND function inside the SELECT statement. But the RAND function is resolved only once for the entire query, so every row will get same value. You can use an ORDER BY clause to sort the rows by the result from the NEWID function, as the following code shows:

SELECT *
FROM Northwind..Orders
ORDER BY NEWID()

SELECT TOP 10 *
FROM Northwind..Orders
ORDER BY NEWID()


—SQL Server MVPs



[推荐] [返回顶部] [打印本页] [关闭窗口]
热点文章
·用批处理对MySQL进行数据操作
·PHP中操作MySQL的一些要注意的问题
·实例讲解:.NET如何访问MySQL数据库
·让MySQL与ASP.NET配合更强大
·数据备份中可能出错的情况及解决办法
·SQL Server连接失败错误分析与排除(1)
·SQL Server连接失败错误分析与排除(2)
·扩展微软 SQL Server 的空间功能
·了解MYSQL数据库调度与锁定的问题
·实例讲解MySQL数据库的查询优化技术
相关文章
·一个有关DISTINCT的问题解答
·金额阿拉伯数字转换为中文的存储过程
·SQL--JOIN之完全用法
·如何使Microsoft SQL Server的日志文
·MySQL修改密码方法总结
·如何将Access和Excel导入到Mysql中之
·关于如何在查询结果中添加自动编号
·如何将Access和Excel导入到Mysql中之
·如何提取除最新十条记录之外的所有记
·如何将Access和Excel导入到Mysql中之
文章检索
Google
相关文章
·一个有关DISTINCT的问题
·金额阿拉伯数字转换为中
·SQL--JOIN之完全用法
·如何使Microsoft SQL Se
·MySQL修改密码方法总结
·如何将Access和Excel导
·关于如何在查询结果中添
·如何将Access和Excel导
·如何提取除最新十条记录
·如何将Access和Excel导
·数据库管理员制胜之宝
·MySQL以速度为目标
·数据库查询结果的动态排
·关于SQL SERVER建立索引
·当SQL Server数据库崩溃