szymski

Untitled

May 24th, 2021
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. --explain
  2. with summary as (
  3. select
  4. m.id,
  5. m."externalId",
  6. m."from",
  7. m.to,
  8. m.title,
  9. m."dateReceived",
  10. m.removed,
  11. -- row_number() over (partition by m.title order by m."dateReceived" desc) / 10 as super_id,
  12. row_number() over w_date as rank
  13. -- count(*) over w_no_date as count,
  14. -- sum(cast(m.removed as int)) over w_no_date as "totalRemoved",
  15. -- count(*) over() as full_count
  16. from public."Mail" m
  17. -- having rank = 1
  18. window
  19. w_date as (partition by m.title order by m."dateReceived" desc),
  20. w_no_date as (partition by m.title)
  21. order by m."dateReceived" desc
  22. )
  23. select
  24. *,
  25. row_number() over(partition by s.title, (s.rank - 1) / 10 order by s."dateReceived" desc, s.rank) as rank2
  26. -- COUNT(*) over() as total_grouped
  27. from summary s
  28. --where rank = 1
  29. where ((s.rank - 1) % 10) = 0
  30. --order by s.title, s."dateReceived" desc
  31. order by s."dateReceived" desc, s.rank
  32. limit 10000 offset 0
Advertisement
Add Comment
Please, Sign In to add comment