sql大佬进来看看

批号相同时,如何让时间最新的一组全部的new_index为1,依次类推,现在是相同批号相同时间内还分为123456.。。。如何处理呢,如下图image.png

无为而无不为 发布于 2021-2-25 10:31
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
1
ScyalcireLv7中级互助
发布于2021-2-25 10:34(编辑于 2021-2-25 10:53)

换一个开窗函数

image.png

最佳回答
0
地球刘亦菲Lv6初级互助
发布于2021-2-25 10:33

order by 后面改成登记时间试试

最佳回答
0
krystal033Lv7高级互助
发布于2021-2-25 10:38

用rank函数先给时间排序 然后在把这个rank后的排序 关联进去

select RANK() OVER(order by time) as rank,* from tab

最佳回答
0
shirokoLv6资深互助
发布于2021-2-25 11:13(编辑于 2021-2-25 13:48)
最佳回答
0
radioliuLv5见习互助
发布于2021-2-25 11:20

row_number() 改为 DENSE_RANK(); order by a.批号,a.登录时间

  • 5关注人数
  • 440浏览人数
  • 最后回答于:2021-2-25 13:48
    请选择关闭问题的原因
    确定 取消
    返回顶部