mongo-查询(5)——查询数组
2017-12-07 15:44
211 查看
mongo-查询(5)——查询数组
查询数组。此时你可能会使用到$all、$size。
> db.tianyc04.find()
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
{ “_id” : 3, “fruit” : [ “orange”, “banana”, “peach” ] }
#通过全匹配,查询第一行
> db.tianyc04.find({fruit:[“apple”, “banana”, “peach”]})
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
#如果将数组中的顺序颠倒,则第一行就匹配不上了。此时可以使用$all
> db.tianyc04.find({fruit:[“apple”, “peach”, “banana”]})
> db.tianyc04.find({fruit:{$all:[“apple”, “peach”, “banana”]}})
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
#也可以只输入一个元素进行查询
> db.tianyc04.find({fruit:’apple’})
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
#如果这个元素变成了数组,mongo就会进行精确匹配。此时你可能需要使用$all进行模糊匹配:
> db.tianyc04.find({fruit:[‘apple’]})
> db.tianyc04.find({fruit:{$all:[‘apple’]}})
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
#还可以按照数组中指定位置的元素进行查询,注意数组下标的起始编号是0。
> db.tianyc04.find()
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
{ “_id” : 3, “fruit” : [ “orange”, “banana”, “peach” ] }
> db.tianyc04.find({‘fruit.1’:’orange’})
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
#可以按照数组长度进行查询,只查询数组长度为x的文档。
> db.tianyc04.find()
{ “_id” : 1, “fruit” : [ “apple”, “banana”, “peach” ] }
{ “_id” : 2, “fruit” : [ “apple”, “orange”, “peach” ] }
{ “_id” : 3, “fruit” : [ “orange”, “banana”, “peach” ] }
{ “_id” : 4, “fruit” : [ “apple” ] }
> db.tianyc04.find({fruit:{size:3}})<br>{ "_id" : 1, "fruit" : [ "apple", "banana", "peach" ] }<br>{ "_id" : 2, "fruit" : [ "apple", "orange", "peach" ] }<br>{ "_id" : 3, "fruit" : [ "orange", "banana", "peach" ] }<br>> db.tianyc04.find({fruit:{size:1}})
{ “_id” : 4, “fruit” : [ “apple” ] }
>
相关文章推荐
- MongoTemplate数组查询
- mongo 查询 数组 查 数组 存在 即命中查询
- mongo数组长度 数组内容 查询
- mongo数组长度 数组内容 查询
- mongo-查询(5)——查询数组
- mongo3.2 数组索引作为联合索引的一部分导致的范围查询问题
- mybatis实现in传入数组查询
- 树状数组:HDU1556 Color the ball 【区间更新,单点查询]
- 数组的查询
- 原生php mysql 查询出数组,为什么只查询出一条数据,封装的phpmysql类
- MySQL与Mongo简单的查询 1
- CodeChef CDMU02(数组辅助查询)
- [示例]NSPredicate基础-查询数组中负荷条件的子集
- ci操作mysql,查询结果集返回 给对象或者数组
- 树状数组模板1——单点修改区间查询
- MongoTemplate针对多条件查询以及复杂查询基本示例
- HDU 4417-树状数组求区间rank查询/主席树区间rank查询
- 二分法查询(数组)
- 如果将Java中从数据库查询到的结果集转换为Json数组形式
- mongo查询过滤条件java实例($and,$or,$eq,$ne)