sql >> Database teknologi >  >> RDS >> Mysql

Få første/sidste n poster pr. gruppe af

Meget forenklet og korrigeret Carlos-løsning (hans løsning ville returnere de første 5 rækker, ikke sidste...):

SELECT tB1.idA, tB1.idB, tB1.textB FROM tableB as tB1 JOIN tableB as tB2 ON tB1.idA = tB2.idA AND tB1.idB <= tB2.idB GROUP BY tB1.idA, tB1.idB HAVING COUNT(*) <= 5

I MySQL kan du bruge tB1.textB selvom det er gruppe for forespørgsel, fordi du grupperer efter idB i den første tabel, så der er kun en enkelt værdi af tB1.textB for hver gruppe...



  1. SQL-udvikler 4

  2. Tilslut MySQL via localhost virker ikke, men 127.0.0.1 virker

  3. Sådan konfigureres klynge-til-klynge-replikering til PostgreSQL

  4. Hvad sker der, hvis jeg dropper en MySQL-kolonne uden først at droppe dens indeks?