mysql里 怎么根据某个字段 进行顺序循环排列,各位大神拜托了!!!

Clumsy_Bird 2016-08-13 10:17:25
比如正常排序的顺序是112234455,想排成123451245这样可以实现吗
...全文
594 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2016-08-15
  • 打赏
  • 举报
回复
选按 id 分组生成序号,再按这个序号和 id 排序就可以了
ACMAIN_CHM 2016-08-13
  • 打赏
  • 举报
回复
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。 参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382 1. 你的 create table xxx .. 语句 2. 你的 insert into xxx ... 语句 3. 结果是什么样,(并给以简单的算法描述) 4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL) 这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
Clumsy_Bird 2016-08-13
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:
你的原始数据是什么样的,你的预期结果又是什么样的?
比如查出来的数据里9条数据其中id列的值分别是 1,4,3,2,1,3,5,2,5 如果正常使用order by id asc 排序 顺序会变成1,1,2,2,3,3,4,5,5 我想让它排序成1,2,3,4,5,1,2,3,5,这样的顺序。 不知道怎么实现,求大神指点
卖水果的net 2016-08-13
  • 打赏
  • 举报
回复
你的原始数据是什么样的,你的预期结果又是什么样的?
一个非货币 2016-08-13
  • 打赏
  • 举报
回复
表的id如果是主键 唯一键什么的是 不会重复的 如果是对重复的列进行自定义排序的话可以声明函数来实现 像你说的这个字段是数字的话 可以先把排序 找到最小的 然后是比这个字段大的中的最小的 直到找到 字段中最大的那个 一直重复这个过程 直到找完为止 当然在重复的时候你要确保 已经被你排序的数据不要重复排序

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧