sql >> Databáze >  >> RDS >> PostgreSQL

Jak vytvořit nějaký druh iterátoru (nebo umělého ID) pro danou sadu řádků?

Měli byste být schopni použít row_number() (což je funkce okna ) k přiřazení požadovaného "iterátoru". Tím se pro každý řádek vytvoří pořadové číslo:

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

Viz SQL Fiddle s ukázkou



  1. obnovení databáze selhalo s přesunem

  2. 12c Adaptivní plány

  3. Laravel ověřte jedinečné, pokud je id stejné

  4. NEBO Zkrat operátora na serveru SQL