基本查询:
find:
若是仅仅想查询在 array 里面所有都出现的字段,用$all。无顺序关系:
====================================================
== 只是目測 MongoDB 里的 find 是有点问题的吧?或者说语法的设计上有点不舒服 ==
== 比方: ==
== 有friends: { name: ‘A‘, age: 12 }的信息 ==
==可是此处查询 friends: { age: 12, name: ‘A‘ },是找不到的, ==
== 但是依照另外一种方式能找到,也就是说要匹配 friends 里的信息,得顺序一致才干够 ==
==
== 但是若这样查询 ==
== db.member.find( { name: ‘scheme‘, friends: { ‘name‘: ‘A‘, ‘age‘: 12 } } ) ==
== 还是db.member.find( { friends: { ‘name‘: ‘A‘, ‘age‘: 12 }, name: ‘scheme‘ } ) ==
== 却又是顺序无关的,都能够查询。 ==
== 相同是{}格式,仅仅只是一个是子结构,外层的能够,子结构却不行。 ==
== 这种设计确实非常不合理 ==
==
========================================================
find的第二个參数。能够用来显示要指定输出的字段
$size 获取指定长度的字段
(海洋要走了,时间真快,还是放点愉快的音乐吧)
$slice 类似 python 中的切片
(和胖子的感情难道仅仅是由于截拳道么,截拳道退役了,就不联系了,海洋后来也就没去截拳道了)
(还是说男生间的感情都仅仅是兴趣牵起来的线?)
(只是Y不是这种。J,D,Z也不是的)
内嵌文档查询:
信息:
查second_name 为 S 的人。点表示法来精确表示内嵌文档的键
当内嵌文档变得复杂后。如键的值为内嵌文档的数组,这时候要精确匹配一条
朋友昵称为名字为 a 年龄为 24 的人,用点缀法。找出来有问题。不存在,却找到了
能够用$elemMatch来指定一组条件限定到数组的单条文档上
还想喝点咖啡什么的,啤酒也能够,肚子也饿了。
===================== 2014/6/11 ======================
联合查询:
链接运算符实现多个表之间的查询
因为 MongoDB 本身的特点,不建议用多个 collection 来处理
可是有些地方必须得用关联查询,能够用手工关联查询和 DBRef 方式关联。
DBRef 就是一个文档里的一个属性指向还有一个文档的指针。
原文:http://www.cnblogs.com/lcchuguo/p/5334655.html