sql >> Database >  >> RDS >> Mysql

Genereer een integer-reeks in MySQL

Ik vond deze oplossing op internet

SET @row := 0;
SELECT @row := @row + 1 as row, t.*
FROM some_table t, (SELECT @row := 0) r

Enkele zoekopdracht, snel en doet precies wat ik wilde:nu kan ik de "selecties" die zijn gevonden in een complexe zoekopdracht met unieke nummers beginnend bij 1 en één keer ophogen voor elke rij in het resultaat.

Ik denk dat dit ook werkt voor het bovenstaande probleem:pas de initiële startwaarde aan voor @row en voeg een limietclausule toe om het maximum in te stellen.

BTW:Ik denk dat de "r" niet echt nodig is.

ddsp



  1. Hoe Substr() werkt in SQLite

  2. Is er een Oracle-equivalent van OUTPUT INSERTED.* van SQL Server?

  3. Grondbeginselen van tabeluitdrukkingen, deel 1

  4. De beste manier om miljoenen rijen op ID te verwijderen