ORDER BY NEWID()【原创】
关于ORDER BY NEWID(),我是这么理解的:
NEWID()是一个产生随即uniqueidentifier的函数,对于ORDER BY子句来说,如果后面接的是一个常量字符串,那么每次排序的顺序都是一样的,如果后面接的是变量,那么每次排序的结果有可能不同,注意了,是有可能不同,也就是说还有可能相同的情况。举个例子:
SELECT * FROM Users ORDER BY money DESC,NEWID()
要想每次排序都不同的话,那么NEWID()必须是紧跟在ORDER BY子句后面的。例如:
SELECT * FROM Users ORDER BY NEWID(),money DESC
其实money已经不起作用了。
对于排序的原理,我是这么理解的,不知是否正确,请大家批评:
每个数据库和操作系统对于字符编码的排列顺序是有可能不同的,这就对ORDER BY的排序结果产生了影响。
依据ORDER BY的排序条件,对字段里的值进行一一比较排序,形成最终的结果集。
由于NEWID()每次生成的值都不一样,也就是形成了每次结果集里的记录排列顺序都是不同的。
转载于:https://www.cnblogs.com/ProgRamMer-cSdn/archive/2008/10/13/1309870.html
ORDER BY NEWID()【原创】相关推荐
- mysql 随机记录 newid(),order by newid() 各种数据库随机查询的方法
这篇文章主要为大家详细介绍了order by newid() 各种数据库随机查询的方法,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! SQL S ...
- mysql order by newid_order by newid() 随机查询
在日常作业中,有时候可能是一些活动要抽出得奖人或选出抽查的一些名单,就常常会使用到Order BY Newid() 的方式来做随机数选出,但有可能的状况需是要搭配到DISTINCT 来选出,这时候如D ...
- sql随机查询数据语句(NewID(),Rnd,Rand(),random())
SQL Server: 代码如下 复制代码 Select TOP N * From TABLE Order By NewID() NewID()函数将创建一个 uniqueidentifier 类型的 ...
- sqlserver2000分页存储过程(原创)
刚刚用了博客园,感觉这里的气氛真的很好,发布这几天写的一个分页存储过程,请dudu多多关照,请各位大牛指正. 功能:海量优化,支持任何字段排序,可支持随机取数据,导出所有数据功能,用了id(整型)比较 ...
- mysql 有newid()_sql newid()随机函数
编辑器加载中...从A表随机取10条记录,用SELECT TOP 10 * FROM ywle order by newid() order by 一般是根据某一字段排序,newid()的返回值 是u ...
- mysql单列去重复group by分组取每组前几条记录加order by排序
<div class="post"><h1 class="postTitle"><a id="cb_post_title ...
- order by居然不能直接在union子句中使用
order by居然不能直接在union子句中使用 今天一个群中的兄弟问一个问题,说有一个表,表中有很多数据,其中有个字段type,希望从表中随机取出10条记录,其中有5条type=1另外5条type ...
- SQL进阶提升(疑惑篇order by)-学习sql server2005 step by step(十一)
这篇主要发出两个疑惑,希望有兴趣的人解答,谢谢! 1.newid()疑惑 1 create table tb (aa int,bb char(1)) 2 insert tb values(1,'A') ...
- php为什么查询语句加上order by就显示不出来,sql会查出结果 php页面偶尔显示空白 没有从sql得到结果...
sql能查出结果 php页面偶尔显示空白 没有从sql得到结果 大神们问个问题啊 sql能查出结果 php页面偶尔显示空白 没有从sql得到结果 但是在数据库里直接执行过程一直都有数据返回 set n ...
最新文章
- 如何创建自己的ESLint配置包
- R语言White’s检验实战:检验回归模型中是否存在异方差性(heteroscedasticity)、发生了异常差(heteroscedasticity)问题如何解决
- 18. 编写FTP客户端程序
- 3.1.2 操作系统内存管理管些什么?
- Centos7之Gcc安装
- Android 蓝牙操作--读取远程已配对的蓝牙设备
- SAP ABAP的权限检查跟踪(Authorization trace)工具使用步骤介绍
- oracle11g重建undo,Oracle11gORA-03113故障,重建控制文件
- 掘金 Markdown 语法手册
- 计算机网络之网络层服务和网络层服务模型
- Unity安卓端重启游戏
- hprose php用户手册,Laravel Hprose RPC 服务
- 鸟哥的linux私房菜 第五章
- json发送数据加密方法_发送加密的电子邮件和安全邮件的最佳免费方法
- 欧几里得算法(求解最大公约数的优质方法)以及原理拓展
- 帝都机器人便利店_我把北京80%的便利店吃了个遍!吐血整理出这份帝都便利店大攻略!...
- 如何使用Win10自带的录屏功能以及如何查找到视频存放的位置
- java hypot_Java StrictMath hypot()用法及代碼示例
- 武汉市企业研究开发中心备案
- 安卓逆向so篇(一):so文件调用
热门文章
- OpenCV copyMakeBorder()来拓展边界
- ubuntu 查看进程信息
- android 动态修改菜单,如何在Android的“选项”菜单上更改MenuItem?
- 35 岁 学python 必要_程序员:Python学不学?完全没必要纠结
- vue导入html登陆页,Vue 实现 登陆后打开主页面(登陆组件 + 主页面组件)
- 在VC中使用MATLAB C++函数库
- 更改matlab默认启动路径
- linux常用网络命令详解,linux网络命令详解(鸟哥)
- mysql 超长记录_谁记录了mysql error log中的超长信息(记pt-stalk一个bug的定位过程)...
- mysql grep 提取错误日志_详解grep获取MySQL错误日志信息的方法