MongoDBクエリ文の簡単な分析
find()文
MongoDBサービスを起動します.mongodyはシステムと一緒に起動しないため、以下のコマンドが実行されると、起動が完了するまでしばらく待つ可能性があります.
MongoDBコマンドライン操作画面に入り、コマンドラインをタップ
exit
終了可能
find()用法:db.COLLECTION_NAME.find()
パラメータなしでデータを問合せ、デフォルトではすべてのデータレコードを返します.
pretty()文
pretty()は、クエリー出力の結果をより美しくすることができます.
MongoDBのAND
複数のキー値ペアがfind()に入力されると、MongoDBはANDクエリとして処理します.使用法:db.mycol.find({ key1: value1, key2: value2 }).pretty()
MongoDBのOR
MongoDBでは、ORクエリ文は$orをキーワードとし、次のように使用されます.
ANDとORを併用
MongoDBサービスを起動します.mongodyはシステムと一緒に起動しないため、以下のコマンドが実行されると、起動が完了するまでしばらく待つ可能性があります.
sudo service mongodb start
MongoDBコマンドライン操作画面に入り、コマンドラインをタップ
exit
終了可能
mongo
find()用法:db.COLLECTION_NAME.find()
> use post # post ,
> db.post.insert([
{
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'shiyanlou',
url: 'http://www.shiyanlou.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
},
{
title: 'NoSQL Database',
description: "NoSQL database doesn't have tables",
by: 'shiyanlou',
url: 'http://www.shiyanlou.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 20,
comments: [
{
user:'user1',
message: 'My first comment',
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
パラメータなしでデータを問合せ、デフォルトではすべてのデータレコードを返します.
db.post.find()
pretty()文
pretty()は、クエリー出力の結果をより美しくすることができます.
db.post.find().pretty()
MongoDBのAND
複数のキー値ペアがfind()に入力されると、MongoDBはANDクエリとして処理します.使用法:db.mycol.find({ key1: value1, key2: value2 }).pretty()
db.post.find({"by":"shiyanlou","title": "MongoDB Overview"}).pretty()
MongoDBのOR
MongoDBでは、ORクエリ文は$orをキーワードとし、次のように使用されます.
> db.post.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
ANDとORを併用
> db.post.find({
"likes": {$gt:10},
$or: [
{"by": "shiyanlou"},
{"title": "MongoDB Overview"}
]
}).pretty() #{\$gt:10} 10, ,\$lt ,\$lte ,\$gte ,\$ne 。