将mysql varchar转换为float或epoch时间?

时间:2013-07-01 12:39:32

标签: python mysql sql

我有一个使用python with time.time()加载的数据库,结果显示为1370449004.766663等等的时间。

这些列在名为time的列中,类型为varchar。

如何转换此列,以便能够使用here讨论的from_unixtime()命令。

我现在这样做:

SELECT UNIX_TIMESTAMP(time) from table;

输出为0.其中time是我的python命令输出为time.time的varchar列。

但是,我的主要目标是将此列转换为浮点列,以便我可以对其进行数学运算,而无需每次都进行转换。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

unix_timestamp()将日期作为输入。在类似varchar的{​​{1}}上调用它是没有意义的。

要将1370449004.766663列转换为varchar列,您可以:

float

将日期存储为alter table YourTable add FloatColumn float; update YourTable set FloatColumn= convert(time, float); 列是一个更好的主意:

datetime