$lt(<) $lte(<=) $gt(>) $gte(>=) $ne(!=) $in $not $size $where limit(5).skip(5).sort({"number" : -1}
2012-12-26 14:36
573 查看
$lt(<) $lte(<=) $gt(>) $gte(>=) $ne(!=) $in $not $size $where limit(5).skip(5).sort({"number" : -1} 查询关键字
$lt(<) $lte(<=) $gt(>) $gte(>=) $ne(!=)
查询一个范围内的数据
> db.qwen.number.find({"number" : { "$gt" : 900 ,"$lt" : 910,"$ne":905 } })
{ "_id" : ObjectId("50da8f322ffd118128237aee"), "name" : "qwen", "number" : 901
}
{ "_id" : ObjectId("50da8f322ffd118128237aef"), "name" : "qwen", "number" : 902
}
{ "_id" : ObjectId("50da8f322ffd118128237af0"), "name" : "qwen", "number" : 903
}
{ "_id" : ObjectId("50da8f322ffd118128237af1"), "name" : "qwen", "number" : 904
}
{ "_id" : ObjectId("50da8f322ffd118128237af3"), "name" : "qwen", "number" : 906
}
{ "_id" : ObjectId("50da8f322ffd118128237af4"), "name" : "qwen", "number" : 907
}
{ "_id" : ObjectId("50da8f322ffd118128237af5"), "name" : "qwen", "number" : 908
}
{ "_id" : ObjectId("50da8f322ffd118128237af6"), "name" : "qwen", "number" : 909
}
$in(存在于数组中的) $nin (不存在于数组中的) $or(或者条件)
> db.qwen.number.find({"number" : { "$in" : [ 901,902 ] } })
{ "_id" : ObjectId("50da8f322ffd118128237aee"), "name" : "qwen", "number" : 901
}
{ "_id" : ObjectId("50da8f322ffd118128237aef"), "name" : "qwen", "number" : 902
}
> db.qwen.number.find( {"number" : { "$nin" : [ 995,998 ],"$lt" : 1000,"$gt" : 9
90 } })
{ "_id" : ObjectId("50da8f322ffd118128237b48"), "name" : "qwen", "number" : 991
}
{ "_id" : ObjectId("50da8f322ffd118128237b49"), "name" : "qwen", "number" : 992
}
{ "_id" : ObjectId("50da8f322ffd118128237b4a"), "name" : "qwen", "number" : 993
}
{ "_id" : ObjectId("50da8f322ffd118128237b4b"), "name" : "qwen", "number" : 994
}
{ "_id" : ObjectId("50da8f322ffd118128237b4d"), "name" : "qwen", "number" : 996
}
{ "_id" : ObjectId("50da8f322ffd118128237b4e"), "name" : "qwen", "number" : 997
}
{ "_id" : ObjectId("50da8f322ffd118128237b50"), "name" : "qwen", "number" : 999
}
$not(可以用于附于任何条件之上) $all匹配所有数组 并且支持正则表达式的查询条件(javascript的语法)
$size取条件中的某部分值,$slice返回数组的一个子集合。
$where支持javascript函数调用来匹配查询.查询的性能较差,因为不能利用索引并且还需要java转换一次。
> db.qwen.foo.insert({"apple" : 1,"banana" : 6,"peach" : 3})
> db.qwen.foo.insert({"apple" : 8,"spinach" : 4,"watermelon" : 4 })
> db.qwen.foo.find({"$where" : function()
{
for(var current in this)
{
for(var other in this )
{
if(current != other && this[current] == this[other] )
{ return true; }
}
}
}
})
{ "_id" : ObjectId("50da96c22ffd118128239e7b"), "apple" : 8, "spinach" : 4, "wat
ermelon" : 4 }
limit(5).skip(5).sort({"number" : -1}每次只显示5条,且排倒序(1为升序)Skip()这种查询就是游标,对于数据集比较大时,性能通常并不好。
> db.qwen.number.find({"name" : "qwen" } ).limit(5).skip(5).sort({"number" : -1})
{ "_id" : ObjectId("50da8f332ffd118128239e74"), "name" : "qwen", "number" : 9995
}
{ "_id" : ObjectId("50da8f332ffd118128239e73"), "name" : "qwen", "number" : 9994
}
{ "_id" : ObjectId("50da8f332ffd118128239e72"), "name" : "qwen", "number" : 9993
}
{ "_id" : ObjectId("50da8f332ffd118128239e71"), "name" : "qwen", "number" : 9992
}
{ "_id" : ObjectId("50da8f332ffd118128239e70"), "name" : "qwen", "number" : 9991
}
>
$lt(<) $lte(<=) $gt(>) $gte(>=) $ne(!=)
查询一个范围内的数据
> db.qwen.number.find({"number" : { "$gt" : 900 ,"$lt" : 910,"$ne":905 } })
{ "_id" : ObjectId("50da8f322ffd118128237aee"), "name" : "qwen", "number" : 901
}
{ "_id" : ObjectId("50da8f322ffd118128237aef"), "name" : "qwen", "number" : 902
}
{ "_id" : ObjectId("50da8f322ffd118128237af0"), "name" : "qwen", "number" : 903
}
{ "_id" : ObjectId("50da8f322ffd118128237af1"), "name" : "qwen", "number" : 904
}
{ "_id" : ObjectId("50da8f322ffd118128237af3"), "name" : "qwen", "number" : 906
}
{ "_id" : ObjectId("50da8f322ffd118128237af4"), "name" : "qwen", "number" : 907
}
{ "_id" : ObjectId("50da8f322ffd118128237af5"), "name" : "qwen", "number" : 908
}
{ "_id" : ObjectId("50da8f322ffd118128237af6"), "name" : "qwen", "number" : 909
}
$in(存在于数组中的) $nin (不存在于数组中的) $or(或者条件)
> db.qwen.number.find({"number" : { "$in" : [ 901,902 ] } })
{ "_id" : ObjectId("50da8f322ffd118128237aee"), "name" : "qwen", "number" : 901
}
{ "_id" : ObjectId("50da8f322ffd118128237aef"), "name" : "qwen", "number" : 902
}
> db.qwen.number.find( {"number" : { "$nin" : [ 995,998 ],"$lt" : 1000,"$gt" : 9
90 } })
{ "_id" : ObjectId("50da8f322ffd118128237b48"), "name" : "qwen", "number" : 991
}
{ "_id" : ObjectId("50da8f322ffd118128237b49"), "name" : "qwen", "number" : 992
}
{ "_id" : ObjectId("50da8f322ffd118128237b4a"), "name" : "qwen", "number" : 993
}
{ "_id" : ObjectId("50da8f322ffd118128237b4b"), "name" : "qwen", "number" : 994
}
{ "_id" : ObjectId("50da8f322ffd118128237b4d"), "name" : "qwen", "number" : 996
}
{ "_id" : ObjectId("50da8f322ffd118128237b4e"), "name" : "qwen", "number" : 997
}
{ "_id" : ObjectId("50da8f322ffd118128237b50"), "name" : "qwen", "number" : 999
}
$not(可以用于附于任何条件之上) $all匹配所有数组 并且支持正则表达式的查询条件(javascript的语法)
$size取条件中的某部分值,$slice返回数组的一个子集合。
$where支持javascript函数调用来匹配查询.查询的性能较差,因为不能利用索引并且还需要java转换一次。
> db.qwen.foo.insert({"apple" : 1,"banana" : 6,"peach" : 3})
> db.qwen.foo.insert({"apple" : 8,"spinach" : 4,"watermelon" : 4 })
> db.qwen.foo.find({"$where" : function()
{
for(var current in this)
{
for(var other in this )
{
if(current != other && this[current] == this[other] )
{ return true; }
}
}
}
})
{ "_id" : ObjectId("50da96c22ffd118128239e7b"), "apple" : 8, "spinach" : 4, "wat
ermelon" : 4 }
limit(5).skip(5).sort({"number" : -1}每次只显示5条,且排倒序(1为升序)Skip()这种查询就是游标,对于数据集比较大时,性能通常并不好。
> db.qwen.number.find({"name" : "qwen" } ).limit(5).skip(5).sort({"number" : -1})
{ "_id" : ObjectId("50da8f332ffd118128239e74"), "name" : "qwen", "number" : 9995
}
{ "_id" : ObjectId("50da8f332ffd118128239e73"), "name" : "qwen", "number" : 9994
}
{ "_id" : ObjectId("50da8f332ffd118128239e72"), "name" : "qwen", "number" : 9993
}
{ "_id" : ObjectId("50da8f332ffd118128239e71"), "name" : "qwen", "number" : 9992
}
{ "_id" : ObjectId("50da8f332ffd118128239e70"), "name" : "qwen", "number" : 9991
}
>
相关文章推荐
- Python使用eval强制转换字符串为字典时报错:File "<string>", line 1, in <module> NameError: name 'nan' is not defined
- The MagicAjax HttpModule is not included in web.config. Add [<httpModules><add name="MagicAjax" type="MagicAjax.MagicAja
- error "Can only specify query options (orderby, where, take, skip) after last navigation" when fetching a List<string>
- curl:<1> Protocol "'http" not supported or disabled in libcurl
- Visual Studio使用"go to definition"出现"A definition for the symbol '<symbolName>' could not be located
- springdata jpa封装数据库关键字(EQ, LIKE, GT, LT, GTE, LTE,IN)
- eq相等 ne、neq不相等, gt大于, lt小于 gte、ge大于等于 lte、le 小于等于 not非 mod求模 等
- 解决:Did not expect server HTML to contain the text node " " in <div>.
- "Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."
- """select * from TRACEUSER where STARTIME >=#2008-8-8 8:00:00# and STARTIME <= #2008-9-3 15:25:42#"""""
- The MagicAjax HttpModule is not included in web.config. Add [<httpModules><add name="MagicAjax" type
- "<>"、"!="、"not in"、"exsits"和"not exists"的使用规范
- <c:if test="${uns ne ‘admin’}">
- How to fix "Resource file <C_PsdRsdll> not found" issue in Windows OS
- 错误:The MagicAjax HttpModule is not included in web.config. Add [<httpModules><add name="MagicAjax" type="MagicAjax.Magic
- linq to sql中慎用Where<T>(Func<TSource, bool> predicate),小心被Linq给"骗"了!
- [转]mongodb 查询条件:关系运算符"$lt", "$lte", "$gt", "$gte", "$ne" 逻辑运算符"$and“, "$or“, "$nor“
- mybatis(ibatis)中的动态sql<dynamic prepend="where"><isNotEmpty>的讲解
- "ASIHTTPRequest"使用报错:ARC forbids explicit...及#import <libxml/HTMLparser.h> file not found
- "app_name" is not translated in zh, zh_CN........解决办法