3

記事のテーブルを MySQL から Mongo DB に移植しています。Mongo によって生成された _id フィールドには、何らかの形で作成時間があり、抽出したり、クエリを実行したりできることを理解しています。このため、MySQL からの created_time INT タイムスタンプを取得するために使用したいと考えています。データを移動して Mongo の _id を生成する方法はありますか? これにより、別のフィールドで現在レコードに使用されているタイム スタンプが得られますか?

4

1 に答える 1

3

はい、可能です。たとえば、C# ドライバーにObjectIdは、タイムスタンプを渡すことができるコンストラクターがあります。このソース ファイルを参照してください。ヘルパー メソッドを使用するのが最も簡単GenerateNewIdです。

var id = ObjectId.GenerateNewId(new DateTime(2012, 01, 01));

使用しているプログラミング言語と、その言語のドライバーがこの機能をサポートしているかどうかはわかりませんが、これは広く利用されていると思います。

編集:この質問には Java、mongoose、python のコードが含まれており、回答には PHP のコードが含まれています。「広く利用可能」というのは間違った仮定のようです。たとえば、PHP ドライバーにはまだ実装されていません。

于 2013-03-18T08:33:25.453 に答える