MongoDB shell で moment.js, moment-timezone を使う方法

MongoDB shell で moment.js, moment-timezone を load() して使う方法をご紹介します。

MongoDB | モンゴディービー

moment.js と moment-timezone-with-data-*.js をダウンロード

まず、moment.js と moment-timezone-with-data-*.js のファイルを公式サイトからダウンロードします。

執筆時点では moment-timezone-with-data-*.js は moment-timezone-with-data-2012-2022.js でした。

moment-timezone-with-data-2012-2022.js はタイムゾーンのデータをファイルの中に含んでいるので mongo shell から timezone を正確に扱いたい場合はこのデータが必要です。

ちなみにファイルは GitHub の以下のディレクトリにもあります。

mongo shell で load() する

ダウンロードした moment.js と moment-timezone-with-data-*.js を mongo shell 上で load() して使います。

$ mongo yourdbname
> load("moment.js")
true
> load("moment-timezone-with-data-2012-2022.js")
true
 
> moment("2017-05-02 00:00:00").tz("America/Los_Angeles").format("YYYY-MM-DD HH:mm:ss")
2017-05-01 08:00:00

もしくは mongorc.js に load() の処理を記載しておくといつでも使えるのでおすすめです。

mongorc.js

load("/path/to/moment.js");
load("/path/to/moment-timezone-with-data-2012-2022.js");

ぜひ moment.js と moment-timezone.js を活用して快適な MongoDB ライフをお過ごしください。