i逐浪 2022-07-07 16:14 采纳率: 0%
浏览 16

MySql查询自增序号持续叠加,不会归零

问题遇到的现象和发生背景

MySql在执行查询时,因需,需要增加一列序号用于排序

问题相关代码,请勿粘贴截图

以下是MySql脚本,Sn就是上面所提的序号

SET @i=0;
SELECT (@i:=@i+1) AS Sn
,u.user_id
,u.user_name
,u.user_real_name
,u.user_organ_id
,u.user_organ_name

FROM t_s_user u
WHERE 1=1
ORDER BY u.user_real_name

运行结果及报错内容

在实际使用时,每执行查询一次,序号就会持续+1递增,
好像是Order By语句影响了序号,把它注释后正常,解除注释又继续叠加序号

我的解答思路和尝试过的方法

脚本检查无异常,不知为何

我想要达到的结果

我需要的是每次执行查询,不管是否有修改过脚本,是否增删列显示,它都能重新从1开始

  • 写回答

2条回答 默认 最新

  • 於黾 2022-07-07 16:45
    关注

    select在前,order by在后
    默认按照第一列进行排序,假如id是1,2,3,4,那么sn对应的也是1,2,3,4
    order by是按照name排序,那么假如排序后id的顺序是4,3,2,1,那么sn必然也变成4,3,2,1了呀
    你可以试着嵌套一层select,在内层order by,外层加sn

    评论

报告相同问题?

问题事件

  • 修改了问题 7月7日
  • 创建了问题 7月7日

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看