sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan opretter man en slags iterator (eller kunstigt id) for et givet sæt rækker?

Du burde kunne bruge row_number() (som er en vinduefunktion ) for at tildele den "iterator", du ønsker. Dette vil oprette et sekvensnummer for hver række:

select *
from
(
  select col,
     row_number() over(order by col) rn
  from yourtable
) src
order by random()

Se SQL Fiddle with Demo



  1. Sporing af udgående forbindelser

  2. Begræns SQL-forespørgselsresultat i MySQL

  3. Postgres:Hvordan konverteres en json-streng til tekst?

  4. Hvordan indsætter du en PHP-konstant i en SQL-forespørgsel?