Ich versuche, Indexfeld für neue Datensätze aktualisiert, die der Tabelle hinzugefügt wurde. Einige der Datensätze haben bereits einen Index. Wie kann ich die neuen Datensätze mit der nächsten Folge von Werten aktualisieren?Partitionieren von Daten neue Daten mit vorhandenen
Sample data:
Index INCIDENT_DT Incident_type Event CITY COUNTRY
1 1/2/16 0:00 Accident Truck Boston NULL
2 1/2/16 0:00 Accident Car Boston NULL
3 1/2/16 0:00 Accident Ground Sutton USA
1/2/16 0:00 Accident NULL NULL NULL
1/2/16 0:00 Accident NULL Chicago NULL
SELECT ROW_NUMBER() OVER (partition BY INCIDENT_DT order by INCIDENT_DT) AS Index, INCIDENT_DT
FROM (select distinct INCIDENT_DT, Incident_type, [event], INCIDENT_CITY, INCIDENT_COUNTRY from input) r
Danke für Ihre Hilfe.
Verwenden Sie die Funktion 'UPDATE'. –
Ich würde aufhören, dies manuell zu tun, und wenden Sie die Eigenschaft [Identität] (https://docs.microsoft.com/en-us/sql/t-sql/statements/create-table-transact-sql-identity-property) zum Indexfeld. – scsimon
Ich wünschte, es gäbe eine Möglichkeit, @scsimon mehr als ein Like auf den obigen Kommentar zu geben. Dieser Prozess ist der verkörperte Wahnsinn. Es ist eine Race Condition und sehr anfällig für Fehler und/oder Kollisionen. –