将系列插入postgreSQL

时间:2016-12-19 07:48:51

标签: database postgresql series

我想在postgreSQL列中插入一系列数字。该系列将是

1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3.....30

所以1-30每次重复10次(300行)。但我知道生成系列我可以使用

 SELECT a.n
from generate_series(1, 100) as a(n), generate_series(1, 3)

如何将此系列插入现有表格 public.trip 以及列。我尝试使用

update public.trip set day = generate_series(1, 30) , generate_series(1, 10);

但这显示为错误。感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

如果你将它作为新数据插入,那么你应该使用INSERT INTO语句我将这样(我假设a.n是包含day值的地方)

INSERT INTO public.trip(Day)
   SELECT a.n from generate_series(1, 100) as a(n), generate_series(1, 3)

如果要更新现有记录,则可以使用UPDATE语句

UPDATE public.trip SET Day =  SELECT a.n from generate_series(1, 100) as a(n), generate_series(1, 3) WHERE [condition]

我希望这个帮助