sql

怎么将表中的数据进行筛选,例如中第一列的多行数据都一样,但是后面的时间不一样,如何进行去重,取时间距离当前时间最近的一条image.png

SQL yzmknpQp2068966 发布于 2023-10-11 10:03
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-10-11 10:04(编辑于 2023-10-11 10:06)

SqlServer?oracle?mysql?

---------

SqlServer为例(其它的不清楚)

select lot_code,max(arrive_date) [new_] from tablename group by lot_code

  • yzmknpQp2068966 yzmknpQp2068966(提问者) oracle
    2023-10-11 10:05 
  • Z4u3z1 Z4u3z1 回复 yzmknpQp2068966(提问者) 没用过oracle 可以试试看上面SqlServer的语句(如果不报错),就在inner join 一下原表就行了
    2023-10-11 10:08 
最佳回答
0
快乐星光Lv5中级互助
发布于2023-10-11 10:13(编辑于 2023-10-11 10:15)

除了楼上办法,还可以用row_number() over (partition by 重复字段 order by 排序字段)函数来搞select * from (

select *,row_number() over (partition by lot_code order by arrive_date desc) as dateno from tablename ) s where dateno =1

  • 2关注人数
  • 156浏览人数
  • 最后回答于:2023-10-11 10:15
    请选择关闭问题的原因
    确定 取消
    返回顶部