heike8
V2EX  ›  PostgreSQL

填坑, join,left join 实现倒序,sql 默认排序的倒序

By heike8 at 2021 年 5 月 1 日 · 3158 次点击

需求:

https://i.imgur.com/s3xR8d1.png

图片注释

这是我自己个人的表,在实际中没有 id 字段,前人留下一万个关联查询 left join,inner join,、子查询 (不下四个 left join )

找不出任何排序规则

公司需求类似,把现有 left join 后的数据倒序

order by 那么字段出来数据顺序都不对.

解决:

https://i.imgur.com/GC3hLzk.png

图片注释

row_number() over()

添加自定义行号,再根据行号倒序。。o(╥﹏╥)o

考虑分页(limit,OFFSET),行号是否会变化

3 条回复  •  2021-05-01 16:29:15 +08:00
rockddd
   1
rockddd  
   2021 年 5 月 1 日   ❤️ 2
自从放了五一假期,我就再也看不懂任何字母了,好奇怪🤭
c6h6benzene
   2
c6h6benzene  
   2021 年 5 月 1 日 via iPhone
over 里面还有 partition by 和 order by 可以写。
heike8
   3
heike8  
OP
   2021 年 5 月 1 日
@c6h6benzene 是的,我测了下 写 order by 会增加耗时
© 2026 V2EX · 60ms · 3.9.8.5