乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
Mongodb 1.40 查询数据
2017-09-08 08:04:54
59
0
0
admin
> 一些较复杂的查询语句 #只显示想要的键(id还是会显示) ``` db.collection_name.find({条件},{"想要的键名":1}) ``` *** #一些查询条件 * \$lt,\$lte,\$gt,\$gte ``` db.users.find({"age":{"$gte":10,"$lte":20}}) ``` * \$in,\$nin(not in),\$or,\$and,\$not ``` > db.number.find({"num":{"$nin":[2,4]}}) > db.number.find({"$or":[{"num":2},{"num":4}]}) > db.number.find({"num":{"$not":{"$gt":1}}}) //$not 一定要和其它条件或者正则表达式一起用,不能直接使用 ``` * \$exists ``` > db.number.find({"num":{"$exists":true}}) ``` * 正则表达式 / /i ``` //支持perl 语法 > db.collection_name.find({"key":/xxx/i}) ``` * 查找数组 ``` > db.a.find({"array":{" $all":["a","b"]}}) //包含每一个要的元素 > db.a.find({"arr.3":"d"}) //按下标查 > db.a.find({"arr":{" $size":4}}) //按大小搜索,目前$size不能支持 $gt 等 > db.a.find({},{"arr":{" $slice":-1}}) //只列出最后一个 > db.a.find({},{"arr":{" $slice":1}}) //只列出第一个 > db.a.find({},{"arr":{" $slice":[2,3]}}) //列出下标2到3的 通常数组中的各个元素"分别"满足各个搜索条件时,就会被搜索出来 要查找 有值匹配所有条件的数组的话,用以下方法 > db.a.find({"arr":{"$elemMatch":{"$gt":4,"$lt":6}}}) ``` *** #游标 可以理解成查询语句的返回对象/迭代器,控制每次返回的文档的数量 ``` var cursor = db.xx.find() while (true) { if ( cursor.hasNext() ) {printjson(cursor.next());} } ```
上一篇:
Mongodb 1.30 使用修改器更新文档
下一篇:
Mongodb 1.50 Index
文档导航