PostgreSQL:如何将日期和当天时间插入到同一个字段/框中?

3
执行以下操作后:
INSERT INTO times_table (start_time, end_time) VALUES (to_date('2/3/2016 12:05',
'MM/DD/YYYY HH24:MI'), to_date('2/3/2016 15:05', 'MM/DD/YYYY HH24:MI'));

PostgreSQL只显示日期。

如果可能的话,我需要运行一个单独的select语句来提取存储在该字段中的时间(例如12:05和15:05)吗?或者查询执行时完全忽略这些时间。

我不想使用时间戳,因为我也想在Oracle SQL中执行此操作。


start_timeend_time是什么类型? - Schwern
1个回答

1

to_date 返回一个日期。惊喜!所以,它不会给你时间。

你应该使用 timestamp 数据类型来存储时间和返回时间戳的函数。因此,请使用to_timestamp

Oracle 还有 timestamp 数据类型to_timestamp 函数

总的来说,试图编写适用于多个数据库的一组 SQL 语句,要么导致必须编写非常简单的 SQL 语句,无法利用任何数据库的功能,要么导致疯狂。

相反,使用SQL查询构建器为您编写SQL,处理兼容性问题并允许您向现有语句添加子句。例如,Javascript有Knex.js和Perl有SQL::Abstract


1
好的,谢谢。将数据类型从日期重新分配为时间戳,然后将to_date()更改为to_timestamp()函数,问题已解决。谢谢。 - gimmegimme

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接