我最近更新了SQL表以將訂單號包含到行中。現在我必須編寫SQL語句來更新具有正確順序值的行。它應該看起來像這樣:更新SQL表以創建訂單號
Id, UserName, Store, OrderNumber
1, User1, store1, 1
2, User2, store1, 2
3, User3, store1, 3
4, User4, store2, 1
5, User5, store2, 2
目前列OrderNumber只包含零。
我應該怎麼做?
我最近更新了SQL表以將訂單號包含到行中。現在我必須編寫SQL語句來更新具有正確順序值的行。它應該看起來像這樣:更新SQL表以創建訂單號
Id, UserName, Store, OrderNumber
1, User1, store1, 1
2, User2, store1, 2
3, User3, store1, 3
4, User4, store2, 1
5, User5, store2, 2
目前列OrderNumber只包含零。
我應該怎麼做?
您可以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
要更新從表ORDERNUMBER
謝謝。有一個小問題,但我解決了它。它應該是: 選擇row_number()over(按Store存儲順序分區)作爲O_number,* – Vax
@ user6314 - 是的錯過了它。更新 –
做到這一點?請在你的問題上給予更多的清晰。什麼應該是你的更新條件。 –