2016-10-10 1 views
1

Ich habe vor kurzem die SQL-Tabelle aktualisiert, um die Bestellnummer in die Zeilen aufzunehmen. Jetzt muss ich SQL-Anweisung schreiben, um Zeilen mit korrekten Bestellwerten zu aktualisieren. Es sollte so aussehen:SQL-Tabelle aktualisieren, um Bestellnummer zu erstellen

Id, UserName, Store, OrderNumber 
1, User1, store1, 1 
2, User2, store1, 2 
3, User3, store1, 3 
4, User4, store2, 1 
5, User5, store2, 2 

Im Moment enthält Spalte OrderNumber nur Nullen.

Wie soll ich fortfahren?

+0

Sie die Tabelle aktualisieren wollen ordernumber? Bitte geben Sie mehr Klarheit in Ihrer Frage. Was sollte Bedingung Ihres Updates sein? –

Antwort

1

Sie können dies tun, mit ROW_NUMBER

With CTE as 
(
select row_number() Over(partition by Store order by Id) as O_number,* 
From yourtable 
) 
Update CTE 
SET OrderNumber = O_number 
+1

Danke. Es gibt ein kleines Problem, aber ich habe es behoben. Es sollte sein: Wählen Sie row_number() über (Partition von Store-Reihenfolge von ID) als O_number, * – Vax

+0

@ user6314 - ja verpasst es. Aktualisiert –

Verwandte Themen