如何在memsql中存储时间戳?

问题描述:

我想从箱子数据库导出数据到memsql。箱子数据库以毫秒为单位存储它的时间戳。如何在memsql中存储时间戳?

然而,当这样导入到memsql数据库时,我的值被清零。

我应该如何在memsql中导入我的时间戳?

您可以将它们作为格式字符串:

YYYY-MM-DD HH:mm:ss 

因此,timestampInMs1489582041572应该成为:2017-03-15 12:47:21


在打字稿,我创建了一个转换脚本,它与通过:moment.js帮助:

const convertTimestamp = (timestampInMs: number): string => { 
    return moment.utc(timestampInMs).format("YYYY-MM-DD HH:mm:ss"); 
}; 

屁股uming以“基于UTC的毫秒数”表示自时代以来的毫秒数,您可以将它们加载到整数列中,然后使用FROM_UNIXTIME将其转换为时间戳类型(http://docs.memsql.com/docs/from_unixtime - 以秒为单位,除以1000)。

你既可以加载到一个临时表中,然后用FROM_UNIXTIME插入选择它,或者使用计算列分配时间戳值当您加载整数值:create table t (mytime_unixtime bigint, mytime as from_unixtime(mytime_unixtime) persisted datetime)

+0

木箱确实使用毫秒,而不是秒。所以,虽然这将工作,但我必须将ms转换为秒,然后使用该函数。这就是为什么我决定只是将csv中的输出完全转换为我可以加载数据INFILE的东西。 – k0pernikus