从没有时区的时间戳中获取日期

Get date from timestamp without time zone

下面的查询 returns table 数据类型时间戳没有时区。我如何设置此查询的格式以便删除时间戳并仅保存日期?

SELECT * 
FROM dblink('dbname=mydb', 'select startdate from study') as t1(start timestamp without time zone);

输出:

|-----------start-------|   
|  2012-03-19 00:00:00  |  
|  2012-04-26 00:00:00  |  
|  2012-05-01 00:00:00  |  
|  2012-06-01 00:00:00  |  
|  2012-07-01 00:00:00  |  
|  2012-08-01 00:00:00  |  
|  2012-02-07 00:00:00  |  
|  2012-04-26 00:00:00  |  
|  2012-09-01 00:00:00  |  
|  2012-12-01 00:00:00  |  
|  2013-11-11 00:00:00  |  
+-----------------------+ 

我要找的是:

|------start---|
|  2012-03-19  |  
|  2012-04-26  |  
|  2012-05-01  |  
|  2012-06-01  |  
|  2012-07-01  |  
|  2012-08-01  |  
|  2012-02-07  |  
|  2012-04-26  |  
|  2012-09-01  |  
|  2012-12-01  |  
|  2013-11-11  |  

您需要将 timestamp 字段转换为 date,可以使用以下方法

SELECT * 
FROM dblink('dbname=bhkpps', 'select begins::date from study') as t1(start date);

SELECT * 
FROM dblink('dbname=bhkpps', 'select begins from study') as t1(start date);

SELECT start::date
FROM dblink('dbname=mydb', 'select begins from study') as t1(start timestamp without time zone);