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

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

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

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

可是 这个问题,我仍是想找到是为何?测试

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

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

好比 按照 身高和年龄排序出来了  2条数据,a,b  (a和b的身高和年龄都是同样的,以前其余不同,好比id确定不同)code

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

也是涨姿式了blog

百度了一下 排序

参考 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 排序以后,查询的结果就是一致了
相关文章
相关标签/搜索