提供: tty00
(→インストール) |
(→すべてのドキュメンを削除する) |
||
(同じ利用者による、間の16版が非表示) | |||
行11: | 行11: | ||
=== MongoDBの起動 === | === MongoDBの起動 === | ||
− | mongod --dbpath | + | mongod --dbpath <データを格納するパスを指定> |
=== MongoDBの停止 === | === MongoDBの停止 === | ||
ターミナルでControl+Cを押す。 | ターミナルでControl+Cを押す。 | ||
+ | == データベースクライアント == | ||
=== データベースクライアントの起動 === | === データベースクライアントの起動 === | ||
mongo | mongo | ||
+ | |||
+ | === コマンド一覧 === | ||
+ | {| class="wikitable" | ||
+ | |+コマンド一覧 | ||
+ | !メソッド|| 説明 | ||
+ | |- | ||
+ | | help || ヘルプを表示する | ||
+ | |- | ||
+ | | show dbs|| データベースの一覧を表示する | ||
+ | |- | ||
+ | | show collections || コレクションの一覧を表示する | ||
+ | |- | ||
+ | | use <db_name> || 現在のデータベースをセットする | ||
+ | |- | ||
+ | | exit || mongoシェルを終了する | ||
+ | |} | ||
+ | |||
+ | == クエリ == | ||
+ | === データの挿入 === | ||
+ | ==== 定義 ==== | ||
+ | <source lang=javascript> | ||
+ | db.collection.insert(document) | ||
+ | </source> | ||
+ | |||
+ | ==== 例 ==== | ||
+ | db.col.insert({name:"dog",age:5}) | ||
+ | |||
+ | === データの更新 === | ||
+ | ==== 定義 ==== | ||
+ | <source lang=javascript> | ||
+ | db.collection.update( | ||
+ | <query>, | ||
+ | <update>, | ||
+ | { upsert: <boolean>, multi: <boolean> } | ||
+ | ) | ||
+ | </source> | ||
+ | |||
+ | {| class="wikitable" | ||
+ | !パラメータ|| 説明 | ||
+ | |- | ||
+ | |<query>||更新対象の条件を指定する | ||
+ | |- | ||
+ | |<update>||更新内容を指定する | ||
+ | |- | ||
+ | |upsert||true:<query>に一致するドキュメントが存在しないとき、新たにドキュメントを追加する<br>false:<query>に一致するドキュメントが存在しないとき、新たにドキュメントを追加しない<br> | ||
+ | |- | ||
+ | |multi||true:<query>に一致するすべてのドキュメントを書き換える<br>false:<query>に最初に一致したドキュメントを書き換える | ||
+ | |} | ||
+ | |||
+ | ==== 例 ==== | ||
+ | db.col.update( {name:"dog",age:5},{$set:{age:10}}) | ||
+ | |||
+ | === データの検索 === | ||
+ | ==== 定義 ==== | ||
+ | <source lang=javascript> | ||
+ | db.collection.find(<criteria>, <projection>) | ||
+ | </source> | ||
+ | {| class="wikitable" | ||
+ | !パラメータ|| 説明 | ||
+ | |- | ||
+ | |<criteria>||検索対象の条件を指定する | ||
+ | |- | ||
+ | |<projection>||フィールドの表示を指定する | ||
+ | |} | ||
+ | |||
+ | ==== 例 ==== | ||
+ | コレクション内のデータ | ||
+ | { "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } | ||
+ | { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } | ||
+ | { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae566f220dd74efadfb76"), "name" : "cat", "age" : 10 } | ||
+ | { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 } | ||
+ | |||
+ | ===== すべてのドキュメンを検索する ===== | ||
+ | *クエリ | ||
+ | db.col.find() | ||
+ | |||
+ | *結果 | ||
+ | { "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } | ||
+ | { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } | ||
+ | { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae566f220dd74efadfb76"), "name" : "cat", "age" : 10 } | ||
+ | { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 } | ||
+ | |||
+ | ===== フィールドを指定して検索する ===== | ||
+ | *クエリ | ||
+ | db.col.find({name:"dog"}) | ||
+ | |||
+ | *結果 | ||
+ | { "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } | ||
+ | { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } | ||
+ | |||
+ | ===== クエリーオペレーションを使用して検索する ===== | ||
+ | *クエリ | ||
+ | db.col.find({age:{$in:[5,15]}}) | ||
+ | |||
+ | *結果 | ||
+ | { "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } | ||
+ | { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } | ||
+ | { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 } | ||
+ | |||
+ | ===== 特定のフィールドを取得する ===== | ||
+ | *クエリ | ||
+ | db.col.find({},{_id:0,age:1}) | ||
+ | |||
+ | *結果 | ||
+ | { "age" : 5 } | ||
+ | { "age" : 10 } | ||
+ | { "age" : 15 } | ||
+ | { "age" : 5 } | ||
+ | { "age" : 10 } | ||
+ | { "age" : 15 } | ||
+ | |||
+ | === データの削除 === | ||
+ | ==== 定義 ==== | ||
+ | <source lang=javascript> | ||
+ | db.collection.remove(<query>, <justOne>) | ||
+ | </source> | ||
+ | |||
+ | {| class="wikitable" | ||
+ | !パラメータ|| 説明 | ||
+ | |- | ||
+ | |<query>||削除対象の条件を指定する | ||
+ | |- | ||
+ | |<justOne>||true:ドキュメントを1つ削除する<br>false:クエリーに一致したドキュメントをすべて削除する<br>デフォルト:false | ||
+ | |} | ||
+ | |||
+ | ==== 例 ==== | ||
+ | =====すべてのドキュメンを削除する ===== | ||
+ | db.col.remove() | ||
+ | |||
+ | ===== 条件に一致するドキュメントを削除する ===== | ||
+ | db.col.remove( {name:"dog"} ) |
2013年12月26日 (木) 21:10時点における最新版
システム構成
- MongoDB:mongodb-linux-i686-2.4.8
- OS:Debian
インストール
MongoDBのダウンロード
http://www.mongodb.org/からmongodb-linux-i686-2.4.8.tgzをダウンロードする。
ファイルを解凍する
tar -zxvf mongodb-linux-i686-2.4.8.tgz
MongoDBの起動
mongod --dbpath <データを格納するパスを指定>
MongoDBの停止
ターミナルでControl+Cを押す。
データベースクライアント
データベースクライアントの起動
mongo
コマンド一覧
メソッド | 説明 |
---|---|
help | ヘルプを表示する |
show dbs | データベースの一覧を表示する |
show collections | コレクションの一覧を表示する |
use <db_name> | 現在のデータベースをセットする |
exit | mongoシェルを終了する |
クエリ
データの挿入
定義
db.collection.insert(document)
例
db.col.insert({name:"dog",age:5})
データの更新
定義
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean> } )
パラメータ | 説明 |
---|---|
<query> | 更新対象の条件を指定する |
<update> | 更新内容を指定する |
upsert | true:<query>に一致するドキュメントが存在しないとき、新たにドキュメントを追加する false:<query>に一致するドキュメントが存在しないとき、新たにドキュメントを追加しない |
multi | true:<query>に一致するすべてのドキュメントを書き換える false:<query>に最初に一致したドキュメントを書き換える |
例
db.col.update( {name:"dog",age:5},{$set:{age:10}})
データの検索
定義
db.collection.find(<criteria>, <projection>)
パラメータ | 説明 |
---|---|
<criteria> | 検索対象の条件を指定する |
<projection> | フィールドの表示を指定する |
例
コレクション内のデータ
{ "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } { "_id" : ObjectId("52bae566f220dd74efadfb76"), "name" : "cat", "age" : 10 } { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 }
すべてのドキュメンを検索する
- クエリ
db.col.find()
- 結果
{ "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } { "_id" : ObjectId("52bae566f220dd74efadfb76"), "name" : "cat", "age" : 10 } { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 }
フィールドを指定して検索する
- クエリ
db.col.find({name:"dog"})
- 結果
{ "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } { "_id" : ObjectId("52bae54ef220dd74efadfb73"), "name" : "dog", "age" : 10 } { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 }
クエリーオペレーションを使用して検索する
- クエリ
db.col.find({age:{$in:[5,15]}})
- 結果
{ "_id" : ObjectId("52bae54cf220dd74efadfb72"), "name" : "dog", "age" : 5 } { "_id" : ObjectId("52bae551f220dd74efadfb74"), "name" : "dog", "age" : 15 } { "_id" : ObjectId("52bae563f220dd74efadfb75"), "name" : "cat", "age" : 5 } { "_id" : ObjectId("52bae568f220dd74efadfb77"), "name" : "cat", "age" : 15 }
特定のフィールドを取得する
- クエリ
db.col.find({},{_id:0,age:1})
- 結果
{ "age" : 5 } { "age" : 10 } { "age" : 15 } { "age" : 5 } { "age" : 10 } { "age" : 15 }
データの削除
定義
db.collection.remove(<query>, <justOne>)
パラメータ | 説明 |
---|---|
<query> | 削除対象の条件を指定する |
<justOne> | true:ドキュメントを1つ削除する false:クエリーに一致したドキュメントをすべて削除する デフォルト:false |
例
すべてのドキュメンを削除する
db.col.remove()
条件に一致するドキュメントを削除する
db.col.remove( {name:"dog"} )