Timestamp (内部用)

最終更新:2026-10-09

Timestamp (内部用)

Timestamp は MongoDB の内部型で、4バイトの Unix 秒と4バイトのインクリメントからなる64ビット値です。レプリカセットの oplog、Change Streams、その他の内部機構を支えます。アプリケーションの時点は Date として格納すべきです。4.4 以降、Timestamp はクエリ条件に現れてはなりません。`Timestamp({ t: seconds, i: increment })` で構築します。

カテゴリBSON 型
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

Timestamp({ t: <seconds>, i: <increment> })
Timestamp(0, 0)  // shorthand

戻り値:t(秒)と i(増分)を公開する Timestamp 値を返します

▶ 例

以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):

// Timestamp: 構築してフィールドを読む
const ts = Timestamp({ t: 1758700000, i: 1 })
print(ts.t, ts.i)  // 秒とインクリメント

出力:

1758700000 1

📌 注意事項

さらなる実践ケースを近日公開予定。

📚 関連チュートリアル

❓ よくある質問

QTimestamp と Date の違いは?
ADate はミリ秒の時点を格納します。Timestamp はインクリメントカウンタを加え、oplog などの内部機構に使われます。
Qアプリケーションで Timestamp を格納できますか?
A推奨しません。MongoDB の内部用で、業務時間は Date として格納してください。
Qなぜ Timestamp のクエリはエラーになるのですか?
A4.4 以降、Timestamp フィールドはクエリ条件で禁止されています。破壊的変更なので、Date に移行してください。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%