在 postgresql 中增加列值
Posted
技术标签:
【中文标题】在 postgresql 中增加列值【英文标题】:Increment column value in postgresql 【发布时间】:2020-04-02 20:35:16 【问题描述】: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
【问题讨论】:
请告诉我们您究竟是如何“尝试”的。 不可能,因为顺序是随机的 【参考方案1】:假设其他值唯一地定义每一行,您可以使用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
以获取具有特定顺序的结果。
【讨论】:
以上是关于在 postgresql 中增加列值的主要内容,如果未能解决你的问题,请参考以下文章