【发布时间】:2011-03-07 06:03:24
【问题描述】:
MySql 中有一个整数列存储 DateTime.Ticks。
单个滴答表示一百纳秒或百万分之一秒。一毫秒内有 10,000 个滴答声。
此属性的值表示自 0001 年 1 月 1 日午夜 12:00:00 以来经过的 100 纳秒间隔数
如何在查询中将其转换为 DateTime?我已经尝试了很多东西,但无法让它发挥作用。
对于刻度 634128921500016150 我希望得到 mysql datetime '2010-06-23 12:06:50'
我原以为以下应该可行,但它给出了“4009-06-22 12:15:50.001600”。好像到 2001 年 1 天 9 分钟就过去了……如果年份和天数一致,我可以手动修复它,但分钟数似乎有点奇怪。
SELECT DATE_ADD('0000-01-01 00:00:00',
INTERVAL 634128921500016150/10000000 SECOND_MICROSECOND);
我尝试添加更多零,但它永远不会匹配:|
我也尝试了 Jon Skeet 的建议,但它给出的结果几乎相同(相差几分之一秒)
【问题讨论】: