文档章节

mysql 多重排序数据顺序可能不固定

之渊
 之渊
发布于 2018/12/30 14:54
字数 476
阅读 11
收藏 1

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

今天遇到了一个很奇怪的问题,就是测试和我说,怎么列表显示的数据 有时候 顺序不一致的? 这种情况偶尔出现,有时候又是固定的顺序了。

我试了一下,发现果然如此。 

看了看代码,是有多重排序,但是 应该是 按照 固定顺序的啊。不会这么坑吧。还好 不是非常严格要求顺序显示。

但是 这个问题,我还是想找到是为什么?

会不会是json 拼接,解析的时候,顺序搞乱了? 

可是 发现 只是相同的 排序的结果 数据会出现而已。

比如 按照 身高和年龄排序出来了  2条数据,a,b  (a和b的身高和年龄都是一样的,之前其他不一样,比如id肯定不一样)

查询出来的显示的结果,可能是 a,b 这些, 也可能是  b,a 这样的。

也是涨姿势了

百度了一下 

参考 https://blog.csdn.net/u012516166/article/details/78292385

参考  https://www.cnblogs.com/hulkCoder/p/5978961.html

好吧。 看了一下 SQL, 果然是没有 在最后指定id排序的方式。

 

于是加上之后发现果然没有这个问题

例子:


SELECT a.id,a.sale_price
	from gwqmshop_goods_warehouse a , gwqmshop_goods g , gwqmshop_goodsclass c
	where   g.id=a.goods_id  and c.id=g.gc_id 
  and a.goods_inventory >0 
	and g.goods_store_id=7
	 and g.goods_status=0 
  and g.ugc_id is not null 
  ORDER BY c.sequence asc ,g.goods_outurl asc, g.specification_thickness asc,
   a.sale_price asc, g.specification_width asc,a.id asc;


###在最后默认指定 a.id asc 排序之后,查询的结果就是一致了

 

 

 

 

 

 

 

 

 

 

 

 

 

 

© 著作权归作者所有

之渊
粉丝 13
博文 671
码字总数 221107
作品 0
佛山
程序员
私信 提问
mysql 怎么实现随机查询并分页,不重复查询

需求: 企业应用中,一般数据量不是很特别多,同时大多在局域网内,性能不会有问题,一般不会分页处理,随机排序数据一般不会有问题 web网站中,一般都用到分页处理,目前数据量比较少,考虑...

solar.xie
2013/05/15
3.3K
0
MySQL高级查询之与Group By集合使用介绍

在MySQL中,你可以获取表达式组合的连接值。 可以使用DISTINCT删去重复值。假若你希望多结果值进行排序,则应该使用 ORDER BY子句。 GROUP_CONCATmysql> SELECT student_name, Or:mysql> SELE...

mysoftsky
2013/08/21
232
1
mysql相关的注意点

mysql相关的注意点 无标题2017-02-1740 阅读 数据库mysql 最近一直忙于业务系统的开发,在开发过程中少不了sql语句的使用,我们在分页遍历的时候经常需要排序,就会编写如下的sql 这个分页s...

无标题
2017/02/17
0
0
MySql中explain的时候出现using filesort,优化之

在使用order by关键字的时候,如果待排序的内容不能由所使用的索引直接完成排序的话,那么mysql有可能就要进行文件排序。 【这个 filesort 并不是说通过磁盘文件进行排序,而只是告诉我们进行...

rudy_gao
2015/07/24
0
0
mysql 类型优化(二)

一、BOLB和TEXT类型 BOLB和TEXT都是为存储很大的灱而设计的字符串数据类型,分别采用二进制和字符方式存储。 它们分别属于两组不同的数据类型家族:字符类型、二进制类型。 MySQL把每个BOLB和...

@ccny
2015/10/21
101
0

没有更多内容

加载失败,请刷新页面

加载更多

sed -i linux 批量替换命令

批量替换 /usr/local/rocketmq/conf 目录下 的 xml 里头的 ${user.home} 替换为 /usr/local/rocketmq # mkdir -p /usr/local/rocketmq/logs# cd /usr/local/rocketmq/conf && sed -i 's#${......

jxlgzwh
30分钟前
4
0
如何在嵌入式CSS中编写a:hover?

我有一种情况,我必须编写内联CSS代码,并且我想在锚点上应用悬停样式。 如何在HTML样式属性内的CSS中使用a:hover ? 例如,您不能在HTML电子邮件中可靠地使用CSS类。 #1楼 简短的答案:您不...

技术盛宴
37分钟前
4
0
一些常用工具下载

golang: https://dl.google.com/go/go1.13.5.window-amd64.zip https://dl.google.com/go/go1.13.5.linux-amd64.tar.gz 更换版本号可以下载其他版本。...

bobby2006
44分钟前
4
0
centos使用yum安装或者更新时总是提示被PackageKit占用

centos使用yum安装或者更新时总是提示被PackageKit占用 使用yum安装或更新软件时总是提示yum被PackageKit锁定占用 Existing lock /var/run/yum.pid: another copy is running as pid 13090. ...

流麦士
50分钟前
4
0
使用CSS内容添加HTML实体

如何使用CSS content属性添加html实体? 使用这样的东西只打印  到屏幕而不是不间断的空间: .breadcrumbs a:before { content: ' ';} #1楼 更新 :PointedEars提到正确的立...

javail
53分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部