Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

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

More than 5 years have passed since last update.

今回は業務でよく使う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にはたくさん用意されています。

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

masarufuruya
Webメインのフリーランスエンジニア。React Nativeでアプリ作ってます。React/React Native/Vue/Ruby/PHP
engineerlife
技術力をベースに人生を謳歌する人たちのコミュニティです。
https://community.camp-fire.jp/projects/view/280040
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away