postgreSQL 8.2의 분기 된 MPP 버전에 대해 매우 간단한 테스트 쿼리를 시도하고 있으며 이것이 예상되는 동작인지 알아 내려고하고 있습니다. 내가 CURRENT_DATE를 사용하여 단일 행 INSERT 문을 수행 할 때current_date와 관련된이 insert 문의 동작을 설명하는 방법
나는 현재 날짜에 대한 예상 출력을 얻을 : 나는 삽입 문에 둘 이상의 행을 추가 할 때하지만 예기치 않은 결과를
create table test(t_date timestamp without time zone);
insert into test( t_date)
VALUES
(
current_date::date
),
db=> select * from test ;
t_date
---------------------
2013-08-19 00:00:00
(1 row)
를 얻을 수 - 표준의이 부분입니까?
insert into test( t_date)
VALUES
(
current_date::date
),
(
current_date::date
);
db=> select * from test ;
t_date
---------------------
1999-12-31 00:00:00
1999-12-31 00:00:00
(2 rows)
내 질문은 : 나도 같은 CURRENT_DATE :: 날짜 캐스트를 사용할 때 내가 CURRENT_DATE : 날짜와 두 번째 삽입 출력이 잘못된 날짜를 사용할 때 왜 첫 삽입 문 출력이 정확한 날짜는 무엇입니까?
PostgreSQL 8.2. (무엇)? 어떤 플랫폼에서? 꽤 오래된 버전과 지원되지 않는 버전을 사용하고 있습니다. 내가 9.2.4에 얻은 결과는 정확히 당신이 기대하는 것입니다. –
저는 Greenplum이라는 MPP 데이터베이스에서 Postgresql을 포크로 작업하고 있으므로 오래된 것을 제어 할 수 없습니다. 나는 이것이 우리가있는 플랫폼에서의 버그인지 진짜 기대되는 출력인지를 결정하려고 노력 중이다. – user7980
글쎄, "PostgreSQL 8.2 기반의 Greenplum 4.2를 사용하고 있습니다."라고 말하면 도움이 될 것입니다. 태그를 업데이트했습니다. –