簡體   English   中英

循環遍歷表並設置列的值

[英]Looping through a Table and setting the value for a column

人...

我是一個完整的SQL Server新手,並有以下問題。 我需要迭代一個表並更新一列。 在此列中,我想設置一個Integer值。 在下一行中,我想為值添加1。 這樣列列看起來像這樣:

1
2
3
4

6
7
8
9

這是最簡單的方法嗎?

謝謝! :-)

你在找這樣的東西嗎?

UPDATE YourTable
    SET YourColumn = YourColumn + 1

首先,您需要了解SQL和基於集合的操作。 您不循環訪問表,一次更新信息集。

如果您只需要一個序號,您可以這樣做:

with cte as (select primarykey, row_number() over (order by primarykey) rn from yourtable)
update yourtable 
set yourcol = rn 
from yourtable 
join cte on yourtable.pk = cte.primarykey

但在嘗試編寫高級查詢之前,您應該真正了解基礎知識。 如果你不得不問如何(或者你可以)迭代一個表,你可能不應該這樣做。

如果你需要實際循環(不確定你真的這樣做),這里有一個關於你如何一次1行的鏈接。 第二部分將引導您創建WHILE循環:

SQL循環

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM