ruby on rails の evernote gem を介して Evernote API にアクセスし、オブジェクト (ノートブック、タグ、メモなど) を Postgresql データベースに保存しています。
Evernote は次のようなタイムスタンプを返します。
- 1344141917000
- 1344141967000
- 1344138641000
evernote api ドキュメントによると、これは 1970 年 1 月 1 日 00:00:00 GMT の基準時刻から経過したミリ秒数です。
日付を再構築するために、Rails コンソールで次の演習を行いました。
evernote_timestamp_base = Time.gm(1970,01,01,00,00,00)
=> 1970-01-01 00:00:00 UTC
evernote_timestamp_base + 1344138641000
=> 44564-01-22 04:43:20 UTC
間違いなく正しくありません。しかし、これらの最後の 3 つのゼロを切り捨てると、正しい日付が得られます。
evernote_timestamp_base + 1344138641
=> 2012-08-05 03:50:41 UTC
ここで何か不足していますか?最後の 3 つのゼロはどうなるのですか? evernote の timstamp 値を解析して切り刻み、1970 ベースに追加する必要がありますか、それとももっと簡単な方法はありますか?
また、これらの値を格納するのに最適な Postgresql データ型は何ですか?
よろしくお願いします。