我有一个包含时间戳数组的表,如下所示:
CREATE TABLE start_times
(
start_date timestamp[]
);
我不确定如何将时间戳值插入数组中。我在一篇文章中读到,在将时间戳插入数组时,我应该使用双引号而不是单引号,如下所示:
INSERT INTO start_times VALUES (ROW('{{"10-JAN-15 12.51.14.340358000 AM"},{"11-JAN-15 12.51.14.340358000 AM"}}'));
然而,当我尝试时,我收到以下错误:
ERROR: invalid input syntax for type timestamp: "10-JAN-15 12.51.14.340358000 AM"
SQL state: 22007
Character: 165
有人能告诉我如何将时间戳值插入时间戳数组吗?
答案 0 :(得分:3)
使用ARRAY
关键字可以释放引用每个元素的必要性,允许根据需要使用单引号。使用ANSI时间戳文字也使它更容易:
INSERT INTO start_times
VALUES
(array[timestamp '2015-01-10 00:51:14', timestamp '2015-01-11 00:51:14']);
无论当前的区域设置如何,这都将有效。