sql >> Databasteknik >  >> RDS >> Sqlserver

Returnera rader i exakt den ordning de infogades

Ett select fråga utan order by gör inte hämta raderna i valfri ordning. Du måste ha en order by för att få en beställning.

SQL Server har ingen standardmetod för att hämta efter infogningsordning. Du kan göra det om du har informationen i raden. Det bästa sättet är en primär nyckelidentitetskolumn:

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

En sådan kolumn inkrementeras när varje rad infogas.

Du kan också ha en CreatedAt kolumn:

CreatedAt datetime default getdate()

Detta kan dock ha dubbletter för samtidiga inlägg.

Den viktigaste punkten är dock att en select utan order by sats returnerar en oordnad uppsättning rader.



  1. 4 Out-of-the-box SQL-datakonverteringsmetoder och användningsfall

  2. Få det vanligaste värdet för varje värde i en annan kolumn i SQL

  3. Dold funktion:Dra och släpp åtkomstobjekt mellan filer

  4. Utveckling av feltolerans i PostgreSQL:Tidsresor