Bara en idé, om du har 2 "identitets"-kolumner, så skulle de säkert vara "synkroniserade" - om inte exakt samma värde, så skulle de skilja sig med ett konstant värde. Om så är fallet, varför inte lägga till kolumnen "andra identitet" som en COMPUTED
kolumn
, vilket uppväger den primära identiteten? Eller är min logik felaktig här?
Edit:Enligt Martins kommentar, notera att din beräkning kan behöva vara N * id + C, där N är Increment och C offset / delta - ursäkta min rostiga matematik.
Till exempel:
ALTER TABLE MyTable ADD OtherIdentity AS Id * 2 + 1;
Redigera Observera att för SQL 2012 och senare kan du nu använda en oberoende sekvens för att skapa två eller flera oberoende inkrementerande kolumner i samma tabell.
Obs :OP har redigerat det ursprungliga kravet för att inkludera återkravssekvenser (noterar att identitetskolumner i SQL inte återtar använda ID:n när de tagits bort).