find方法
db.collection_name.find();
查询所有的结果:
select * from users;
db.users.find();
指定返回那些列(键):
select name, skills from users;
db.users.find({}, {'name' : 1, 'skills' : 1});
补充说明: 第一个{} 放where条件 第二个{} 指定那些列显示和不显示 (0表示不显示 1表示显示)
where条件:
1.简单的等于:
select name, age, skills from users where name = 'hurry';
db.users.find({'name' : 'hurry'},{'name' : 1, 'age' : 1, 'skills' : 1});
2.使用and
select name, age, skills from users where name = 'hurry' and age = 18;
db.users.find({'name' : 'hurry', 'age' : 18},{'name' : 1, 'age' : 1, 'skills' : 1});
3.使用or
select name, age, skills from users where name = 'hurry' or age = 18;
db.users.find({ '$or' : [{'name' : 'hurry'}, {'age' : 18}] },{'name' : 1, 'age' : 1, 'skills' : 1});
4.<, <=, >, >= ($lt, $lte, $gt, $gte )
select * from users where age >= 20 and age <= 30;
db.users.find({'age' : {'$gte' : 20, '$lte' : 30}});
5.使用in, not in ($in, $nin)
select * from users where age in (10, 22, 26);
db.users.find({'age' : {'$in' : [10, 22, 26]}});
6.匹配null
select * from users where age is null;
db.users.find({'age' : null);
7.like (mongoDB 支持正则表达式)
select * from users where name like "%hurry%";
db.users.find({name:/hurry/});
select * from users where name like "hurry%";
db.users.find({name:/^hurry/});
8.使用distinct
select distinct (name) from users;
db.users.distinct('name');
9.使用count
select count(*) from users;
db.users.count();
10.数组查询 (mongoDB自己特有的)
如果skills是 ['java','python']
db.users.find({'skills' : 'java'}); 该语句可以匹配成功
$all
db.users.find({'skills' : {'$all' : ['java','python']}}) skills中必须同时包含java 和 python
$size
db.users.find({'skills' : {'$size' : 2}}) 遗憾的是$size不能与$lt等组合使用
$slice
db.users.find({'skills' : {'$slice : [1,1]}})
两个参数分别是偏移量和返回的数量
11.查询内嵌文档
12.强大的$where查询
db.foo.find();
{ "_id" : ObjectId("4e17ce0ac39f1afe0ba78ce4"), "a" : 1, "b" : 3, "c" : 10 }
{ "_id" : ObjectId("4e17ce13c39f1afe0ba78ce5"), "a" : 1, "b" : 6, "c" : 6 }
如果要查询 b = c 的文档怎么办?
> db.foo.find({"$where":function(){
for(var current in this){
for(var other in this){
if(current != other && this[current] == this[other]){
return true;
}
}
}
return false;
}});
{ "_id" : ObjectId("4e17ce13c39f1afe0ba78ce5"), "a" : 1, "b" : 6, "c" : 6 }
分享到:
相关推荐
MongoDB是一种流行的开源、文档型数据库,以JSON格式存储数据,具有灵活性和高可扩展性。作为NoSQL数据库的一种,它...这个"robot mongo操作手册"将是你探索MongoDB世界的得力助手,帮助你快速上手并精通MongoDB操作。
完全面向对象的mongo封装,maven工程源码,可直接install导出jar包引用,支持基本的增删改查和分页等,使用反射对javaBean实体进行映射,所有方法参数只需要传javaBean就行了,支持带密码连接,即拿即用,无需修改。
一个关于mongodb最佳操作的ppt,内容不错
.net平台(C#)MongoDB最新版操作类 MongoDB操作类源码包括添加、修改、删除和查询(包括分页)等同步及异步操作类完整的代码。 本项目是以最新版的MVC结合MongoDB呈现,对MongoDB有兴趣的朋友很有参考价值。 可以...
mongo基础操作命令,增删改查等基础命令。mongo基础操作命令,增删改查等基础命令。
# mongo.js 封装了一些基本的node对mongo操作 # 使用方法,直接node servicemongo.js 就行,也可以在另一个项目里调用servicemongo的start # 注意 如果node包不能用,看下错误日志,缺什么就直接npm i XXX 装上就好
7. **易用性**:作为阿里云的产品,mongo-shake的使用门槛相对较低,提供了清晰的命令行接口和配置选项,使得操作简单直观。 在使用mongo-shake之前,你需要确保源和目标MongoDB实例的版本兼容,同时,由于它依赖于...
使用MyBatisPlus的方式,优雅的操作MongoDB,可和现有Mongo框架结合使用,无侵入性 简化开发, 只需简单配置,即可快速进行CRUD操作,链式调用更加便捷。只做增强不做改变,引入它不会对现有工程产生影响,如丝般...
MongoVUE是一款强大的MongoDB数据库管理系统,专为简化MongoDB的可视化操作而设计。它提供了一个直观的图形用户界面(GUI),使得数据库的管理和数据操作变得更加便捷,尤其适合那些不熟悉命令行界面或者希望提高...
本文将详细介绍"mongo本地操作连接工具"——Robo 3T(原名Robomongo),以及如何使用它来连接和管理MongoDB数据库。 Robo 3T是一款轻量级、跨平台的MongoDB管理工具,支持Windows、Mac OS X和Linux操作系统。它的...
MongoVUE是一款专为Windows操作系统设计的MongoDB客户端工具,旨在提供一个直观且功能丰富的图形用户界面(GUI),使得数据库的管理和操作更为便捷。MongoDB是一种流行的开源、文档型的NoSQL数据库系统,广泛应用于...
MongoVUE是一个创新的MongoDB桌面应用Windows操作系统,给你一个优雅的、高度可用的GUI界面来使用MongoDB。现在有一个更少的担心在管理你的网络数据。 MongoVUE使其成为一个非常简单的看到并可视化数据。
MongoTemplate是Spring Data MongoDB框架中的一个核心组件,用于在Java应用中方便地操作MongoDB数据库。这个资源包“mongoTemplate工具类Dao层方法封装.zip”显然提供了两种版本的MongoTemplate操作集合的代码示例,...
3. CRUD操作:Mongo4idea提供了丰富的操作界面,使得创建、更新、读取和删除(CRUD)数据变得直观且高效。用户可以直接在界面上编写和执行MongoDB查询语句,如`find()`, `update()`, `insert()`, 和 `delete()`。 4...
MongoDB是一款流行的、基于文档的NoSQL数据库,而`mongo-cxx-driver`则是MongoDB官方支持的C++接口,它提供了丰富的API来执行查询、插入、更新和删除等操作。 ### 一、MongoDB概述 MongoDB以其灵活性、高性能和易于...
MongoVUE是一款专为MongoDB数据库设计的图形用户界面(GUI)工具,它极大地简化了数据库的管理和操作过程。MongoDB是一种流行的NoSQL数据库系统,以其高性能、高可用性和灵活性而受到开发者的青睐。MongoVUE作为...
MongoVUE是一款专为Windows操作系统设计的MongoDB数据库管理工具,它提供了直观的图形用户界面,使得MongoDB的管理和操作变得更加便捷。MongoDB是一个流行的开源、文档型的NoSQL数据库系统,广泛应用于现代Web应用...
本篇将深入探讨 "mongo C语言操作库 1.8" 的相关知识点。 1. **C语言驱动概述**: MongoDB C驱动,也称为`mongo-c-driver`,是官方支持的用于在C语言中与MongoDB服务器通信的库。1.8版本是该驱动的一个稳定版本,...
MongoVUE则是一款专为MongoDB设计的图形化管理工具,它提供了直观的用户界面,使得数据库的管理和操作变得更加便捷。 MongoVUE的主要功能包括: 1. **连接管理**:MongoVUE允许用户轻松地创建、保存和管理多个...