Oracle
 sql >> Database >  >> RDS >> Oracle

Genera numero di sequenza in select

Questa query genererà una sequenza di 10 cifre a partire da 1001 e riempite con zeri.

select LPAD ( 1000 + LEVEL ,11,0 ) FROM DUAL CONNECT BY LEVEL <= 10;

produzione

   id_column
   ------------
    00000001001
    00000001002
    00000001003
    00000001004
    00000001005
    00000001006
    00000001007
    00000001008
    00000001009
    00000001010

Se è necessario utilizzare una serie del genere in select con altre colonne di una tabella, è meglio utilizzare rownum o row_number come suggerito da Gordon.

Hai chiesto,

Questo proviene dalla documentazione Oracle.

Quindi, spero che sia chiaro. Se stai semplicemente inserendo record nel file CSV da tabelle Db e questo codice è scritto nel cursore, non è necessario seguire la sequenza. Ma poi di nuovo dipende da come stai recuperando dal cursore di cui stai parlando. Se puoi fornire maggiori dettagli, potremmo aiutarti a costruire i blocchi di query/PL/SQL richiesti, se presenti.