LoginSignup
70

More than 5 years have passed since last update.

業務でよく使うMongoDBコマンドまとめ

Last updated at Posted at 2015-01-14

今回は業務でよく使うMongoDBのコマンドの一覧をまとめました。

ぜひ、リファレンスとしてブックマークしてご活用ください!

検索

全件取得する場合

db.xxx.find();

条件(1つ)に該当するレコードのみ取得

db.xxx.find({id:1});

条件(複数)に該当するレコードのみ取得

db.xxx.find({id:1, name:'hoge'});

カンマで条件を複数指定可能

ObjectIdで検索

db.xxx.find({_id:ObjectId("123f6152b84rw07f4000333b")});

期間指定

db.xxx.find({yyy:{$gte:***,$lte:***}});

yyyが$gte:以上, $lte:以下の条件で検索可能

多次元配列のレコードを検索

db.xxx.find({yyy.zzz:"hogehoge"})

配列の中に配列が存在するような、データの場合は「.」でつなげることでアクセス可能

最初はforでループしないといけないかと思いましたが、
これを使えば深い階層のカラムを条件にソートしたりできるので便利です。

ソート

db.xxx.find().sort({yyy:-1});

yyyのカラムで降順にソート

db.xxx.find().sort({yyy:1});

昇順の場合は1を指定する

データ件数を指定

db.xxx.find().limit(10);

10件のみ取得する

削除

すべて削除

db.xxx.remove();

条件に該当するレコードのみ削除

db.xxx.remove({yyy:"hogehoge"});

データエクスポート

CSVエクスポート

下記のようにすると、条件に該当するデータの内、--fieldsで指定したカラムのみがCSVに出力される。

mongoexport -q 条件 -out [出力ファイル名].csv --csv --fields xx,yy,zz

データベースを指定する場合

mongoexport -d [データベース名] -out [出力ファイル名].csv --csv --fields xx,yy,zz

コレクションを指定する場合

mongoexport -d [データベース名] -c [コレクション名] -out[出力ファイル名].csv --csv --fields xx,yy,zz

バックアップ

mongodump -d [データベース名] -c [コレクション名]

リストア

mongorestore -d [データベース名] -c [コレクション名] xxx.bson

いかがでしたでしょうか?今回ご紹介したコマンド以外にも、

便利なコマンドがMongoDBにはたくさん用意されています。

うちではこんなコマンドをよく使ってるよ!等のご指摘ありましたらぜひコメントで教えてください!

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
70