首页 > 解决方案 > 当我从 mockaroo.com 导入日期时,显示日期但缺少时间

问题描述

我从 mockaroo.com 导入了我的数据,当我使用 DBeaver PostgreSQL 运行它时,当我尝试提取它时会丢失一小时。

create table t7 (
    id INT,
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    email VARCHAR(50),
    gender VARCHAR(50),
    thedate DATE
);

insert into t7 (id, first_name, last_name, email, gender, thedate) values (1, 'Lise', 'Scading', 'lscading0@yandex.ru', 'Female', '2018-11-17 07:24:03');
insert into t7 (id, first_name, last_name, email, gender, thedate) values (2, 'Pall', 'Tilbrook', 'ptilbrook1@whitehouse.gov', 'Male', '2019-04-17 15:04:51');




SELECT id, thedate, extract(hour from thedate) 
FROM t7

date_part 说 0 这显然是错误的。

这是我制作的视频,显示了我在说什么。

标签: sqlpostgresql

解决方案


查看CREATE语句,我可以看到用于您的列的数据类型是DATE- 这不存储时间。尝试使用TIMESTAMP或其他一些日期/时间类型,它们在创建表时也会存储时间。

create table t7 (
    id INT,
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    email VARCHAR(50),
    gender VARCHAR(50),
    thedate TIMESTAMP
);

推荐阅读