minimongodb コマンド集
カテゴリー:Meteor 作成日:2015年2月3日21:56
meteor に組み込みのminimongodb のコマンド
meteor で使われるデータベース名は meteor で起動中に別 Shell から meteor mongoで起動する。
mongodbではテーブルをコレクションと言う Json形式で値を受け渡しする。
インサート文
db.collection.insert( { name: 'hoge', comment: 'memo', createAt: new Date() } );
// _idは自動で追加される。 primary keyになる。
アップデート文
db.collection.update( {name: 'hoge'}, {$set: {comment: memo1}} );
// nameフィールドの'hoge'を検索して comment フィールドを memo1 へ変更している。
// 複数項目更新するには ,{multi: true}を追加する
db.collection.update( {name: 'hoge'}, {$set: {comment: memo1, comment2: memo2 },{multi: true}} );
削除文
db.collection.drop(); // コレクション自体も削除される。
db.collection.remove(); // コレクションの中身が削除される。
検索文
db.collection.find(); // 古い順に全て検索
db.collection.find( {}, {sort: {createAt: -1}, skip: 0, limit: 30} );
// 「createAt: -1」 は書き込み日付の新しい順に 「skip: 0」は先頭から0を10にすると10件分よみ飛ばす 「limit: 30」 30件分検索
db.collenction.find( {name: 'hoge'} ); // select from collection where name='hoge'
db.collection.find( {name: '/hoge/'} ); // select from collection where name LIKE '%hoge%'
db.collection.find( {a: 1, b: 2} ); // select from collection where a=1 AND b=2
db.collection.find( { a: { $gt: 1} } ); // select from collection where a>
db.collection.find( { a: { $gt: 1}, b:{ $lt: 2} } ); // select from collection where (a>1 AND b<2)
db.collection.find( {$or: [a: { $gt: 1}, b:{ $lt: 2}] } ); // select from collection where (a>1 OR b<2)
ちなみに以下のようだ
$gt >
$lt <
$ne !=
$gte >=
$lte <=
$or OR
カウント数
db.collection.count(); // select COUNT(*) from collection
db.collection.find( {a: {$gt: 1}} ).count();
リミット
db.collection.findOne(); // select from collection LIMIT 1
db.collection.limit(5); //select from collection LIMIT 5
ダンプとリストア ( minimongodb に使えるのかは不明 )
mongodump --out mongodb.backup //全てのデータベースをバックアップ
mongodump --db collection --out collection.backup // 任意のデータベースをバックアップ
mongorestore --drop mongodb.backup // リストア