交织MySQL表的行

交织MySQL表的行,第1张

交织MySQL表的行

独立枚举每个类,然后按枚举排序

select data, class, idxfrom (select a.*,  (@seqnum := if(@class = class, @seqnum + 1,      if(@class := class, 1, 1)     )  ) as idx      from atable a cross join(select @class := NULL, @seqnum := 0) vars      order by class, data     ) aorder by idx, class;

编辑:

该查询独立地枚举每个类,因此数据最少的行的值为1,依此类推。为此,它正在使用MySQL变量。在其他数据库中,您将使用

row_number()
。进行枚举后,最后一步就是按该字段排序。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5675162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存