Vertica DB为不同的技术返回不同的数据格式

时间:2017-07-20 06:16:43

标签: python r vertica

目前,我正在尝试将流程从R迁移到Python。 当我试图验证从vertica db中提取的数据时,我注意到R和Python已经返回了不同的日期结果(逻辑上相同的日期和时间,但是按值,它是不同的),这个会在我的迁移过程中造成障碍,如果没有对结果进行任何更改,是否有理由进行此转换? 查询:

Select enddatetime from A where B="this"

R语言的输出:

6/9/2017  10:44:34 PM

Python的输出:

2017-06-09 12:14:33.866000-05:00

-05:00表示从美国时间到格林尼治标准时间的差异, 由于我住在印度,印度和格林尼治标准时间的差异是-05:30,因此总差异是10:30。从而使输出逻辑正确,但值不同。

有没有办法让我的Python输出与R输出相对应?

1 个答案:

答案 0 :(得分:1)

存储在Vertica中的数据类型与您的语言(R或Python)默认使用的格式之间存在差异,以显示其值。

每种语言都将Vertica数据类型映射到自己的数据类型。 Python最有可能使用datetime

当显示日期时间变量时,Python使用默认格式化程序,但您可以使用date.strftime函数指定自己的格式,与R一个匹配。例如:

d.strftime("%d/%m/%y")