2017-09-19 45 views
0

我想获取时间的唯一小时并将其与日期连接起来。 这里是我的查询postgres中的日期和时间连接

SELECT distinct TOTALIZER_METER_READINGS.date + to_char(TOTALIZER_METER_READINGS.time ,'HH') 
FROM TOTALIZER_METER_READINGS 

是否有任何其他方式获得的时间的小时不把它变成文字?

+0

为什么你存储日期和时间在一列。你应该将它存储在'timestamp'列中。 –

回答

1

+是操作员添加数字,日期或间隔。

SQL中的字符串连接运算符是||

当你存储日期和时间两列而不是使用单个timestamp专栏中,我将它们转换为一个时间戳值,然后在“完成”时间戳适用to_char()

添加time到一个date回报,然后可以格式化timestamp,只要你想:

SELECT distinct to_char(TOTALIZER_METER_READINGS.date + TOTALIZER_METER_READINGS.time, 'yyyy-mm-dd HH') 
FROM TOTALIZER_METER_READINGS 
1

可以使用EXTRACT(或date_part功能):

SELECT EXTRACT(hour FROM current_timestamp); 

的结果类型为double precision

相关问题