Jemand hier war so nett, ein Skript zur Verfügung stellen, um mir helfen, Zahlen in Inkrement zu generieren, so dass es wie die PIN-Nummer unten aussehen könnte. Ich lief das Skript und bemerkte die minimale PIN-Nummer erzeugte 10000 ist die wirklich 4310
Tabellenname sein sollte: CitizenWollen Sie Daten inkrementell generiert, stattdessen Zufallszahlen generiert
Firstname Lastname PIN Address Age other columns....
John Smith 4310 20001 19
Andrew Evans 4311 363252 30
Bill Towny 4312 63322 67
Dame Beaut 4313 34222 34
WITH PIN_NO
AS
(
SELECT 4310 + ROW_NUMBER() OVER(ORDER BY [All LP First Name]) NEW_PIN, *
FROM [dbo].[C3MDMRevsBens]
)
UPDATE PIN_NO
SET [Account Reference Number] = CAST(NEW_PIN AS VARCHAR(10))
Wenn ich die PIN-Nummer in asc Reihenfolge geordnet, unten sind die erzeugten Zahlen von Einträgen 1 .....
select * from Citizen order by PIN asc
ODER
SELECT MIN(PIN) FROM Citizen
.
10000
100000
100001
100002
100003
100004
100005
100006
100007
100008
100009
10001
Dank
Basierend auf Ihren Ausgabedaten erscheint PIN als eine varchar- oder nvarchar-Spalte. Sie müssen entweder die Spaltendefinition in einen numerischen Wert ändern (z. B. int), oder wenn dies nicht möglich ist, müssen Sie die Spalte in Ihrer ORDER BY-Klausel "CAST". – bassrek
basierend auf Frage http://stackoverflow.com/questions/39490273/adding-preserving-leading-zero-while-updating-a-column – swe