簡體   English   中英

增加 postgresql 中的列值

[英]Increment column value in postgresql

test_id 的數據類型是 int(4) 我試圖將 test_id 的值增加 1。

下面是表格

test_id   name   location

 245      Frank    CA
 245      Roy      MO
 245      Tom      KS
 245      Chris    KS
 245      Harry    MO

預期產出

  test_id   name   location

   245      Frank    CA
   246      Roy      MO
   247      Tom      KS
   248      Chris    KS
   249      Harry    MO

假設其他值唯一定義每一行,您可以使用row_number()join

update t
    set test_id = test_id + seqnum
    from (select t.*, row_number() over () - 1 as seqnum
          from t
         ) tt
    where tt.name = t.name and tt.location = t.location;

您可能需要row_number()order by以獲取具有特定排序的結果。

暫無
暫無

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

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