PostgreSQL学习篇9.9 日期/时间类型

时间/日期类型:
timestamp[(p)] [without time zone]
timestamp[(p)] with time zone:日期和时间,带时区
interval [(p)] :时间间隔
date:只用于日期
time[(p)] [without time zone] :只用于一日内时间
time[(p)] with time zone :只用于一日内时间,带时区

日期输入:
postgres=# show datastyle;
ERROR:  unrecognized configuration parameter "datastyle"
postgres=# show datestyle;
 DateStyle
-----------
 ISO,MDY
(1 row)

postgres=# create table testd(col1 date);
CREATE TABLE
postgres=# insert into testd values(date '12-23-16');
INSERT 0 1
postgres=# select * from testd;
    col1   
------------
 2016-12-23
(1 row)

如果有日期列,注意datestyle的设置,因为同一个insert,不同的datestyle会有不同的意义:
postgres=# show datestyle;
 DateStyle
-----------
 ISO,MDY
(1 row)

postgres=# insert into testd values(date '1-2-2016');
INSERT 0 1
postgres=# set datestyle='DMY';
SET
postgres=# insert into testd values(date '1-2-2016');
INSERT 0 1
postgres=# select * from testd;
    col1   
------------
 2016-12-23
 2016-01-02
 2016-02-01
(3 rows)

postgres=#
postgres=# select time '103245';
   time   
----------
 10:32:45
(1 row)

各个时区缩写所表示意义:
postgres=# select * from pg_timezone_abbrevs ;


特殊时间:Now :当前事务的开始时间--可以类比Oracle中的sysdate
postgres=# select date 'Now';
    date   
------------
 2016-12-06
(1 row)

postgres=# select timestamp 'Now';
         timestamp         
----------------------------
 2016-12-06 04:17:01.645177
(1 row)

postgres=# select current_time;
       timetz       
--------------------
 05:01:51.535537+08
(1 row)

postgres=# select current_date;
    date   
------------
 2016-12-06
(1 row)

postgres=# select current_timestamp;
              Now             
-------------------------------
 2016-12-06 05:02:08.058959+08
(1 row)


 

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...