Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Restituisce le righe nell'ordine esatto in cui sono state inserite

A select query senza order by non recuperare le righe in un ordine particolare. Devi avere un order by per ottenere un ordine.

SQL Server non dispone di alcun metodo predefinito per il recupero tramite ordine di inserimento. Puoi farlo, se hai le informazioni nella riga. Il modo migliore è una colonna di identità della chiave primaria:

TableId int identity(1, 1) not null primary key

Tale colonna viene incrementata man mano che ogni riga viene inserita.

Puoi anche avere un CreatedAt colonna:

CreatedAt datetime default getdate()

Tuttavia, questo potrebbe avere duplicati per inserimenti simultanei.

Il punto chiave, tuttavia, è che un select senza order by la clausola restituisce un insieme di righe non ordinato.