2015-05-05 2 views
1

Я перехожу из SQL Server в PostgreSQL. Как перевести getutcdate функции, как:Какова эквивалентность getutcdate() в MS SQL Server в postgresql?

Insert into mytable (mypk, toucheddate) values (99, getutcdate()) 

(я не прошу эквиваленту MySQL, это другая платформа)

+0

Поможет ли это? http://stackoverflow.com/questions/7143505/fastest-postgresql-equivalent-to-mysql-utc-date-getting-utc-date –

+0

Он дает подсказку, но он не отвечает на мой вопрос, так как я не знаю если функция MySQL эквивалентна функции SQL Server. Мой вопрос был недостаточно точным, редактирование только что сделано. – ilsankergeeky

ответ

4

Есть по крайней мере два способа, чтобы получить текущее время в формате UTC:

select now() at time zone 'utc'; 

select current_timestamp at time zone 'utc'; 
0

Postgres имеет current_timestamp для текущей даты и времени, current_date для текущую дату и current_time за текущее время.

Дополнительную информацию можно найти в the documentation.

+0

Это не в UTC, а по местному времени. Нужно быть 'current_timestamp в часовом поясе 'utc'' –

1

Я считаю, что вы ищете now():

postgres=# select now(); 
      now 
--------------------------- 
2015-05-05 13:52:45.81-04 
(1 row) 
+1

Этого недостаточно, так как они хотели UTC. Это дает местное время. Нужно быть 'now() в часовом поясе 'utc'' –

Смежные вопросы