我有一个timestamp without time zone
型的added_at
栏.我希望它的默认值是当前日期时间,但不带时区.函数now()
也返回时区.
我该如何解决这个问题?
我有一个timestamp without time zone
型的added_at
栏.我希望它的默认值是当前日期时间,但不带时区.函数now()
也返回时区.
我该如何解决这个问题?
SELECT now()::timestamp;
该cast将now()
返回的timestamptz
转换为您时区中相应的timestamp
,该时区由会话的timezone
设置定义.这也是standard SQL function LOCALTIMESTAMP
在Postgres中的实现方式.
如果你不在多个时区工作,那就行了.否则换成timestamptz
换成added_at
.区别是什么?
顺便说一句,这也一样,只是噪音更大,价格更贵:
SELECT now() AT TIME ZONE current_setting('timezone');