1.基本对象插入
BasicDBObject obj = new BasicDBObject();
obj.put("id", i);
collection.insert(obj);
2.按照指定字段排序
DBCursor cursor=collection.find().sort(new BasicDBObject("id",-1)); //排序 1为升序 -1为降序
3.分页
DBCursor cursor=collection.find().limit(10); //只取前十个
DBCursor cursor=collection.find().skip(10); //取前十个记录之后的
collection.find().count() ; //总记录数
4.范围查询
//select * from test_table where id>=10 and id<30 注:$gt=(>) $gte=(>=) $lt=(<) $lte=(<=) $ne=(!=)
DBCursor cursor = collection.find(new BasicDBObject("id",new BasicDBObject("$lt", 30).append("$gte", 10)));
5.集合查询
//select * form table where id in (1,12,23)
int [] strs = new int[3]; //其实也可以放在List里面
strs[0] = 1;strs[1] = 12;strs[2] = 23;
DBCursor cursor=collection.find(new BasicDBObject("id",new BasicDBObject("$in",strs)));
6.查询特定字段
DBObject query = new BasicDBObject();//要查的条件
query.put("uid", "name10");
DBObject field = new BasicDBObject();//要查的哪些字段
field.put("id", true);
field.put("fid", true);
field.put("ip", true);
DBCursor cursor=collection.find(query,field);
7.去掉重复查询
//select distinct("uid") from table
注意:distinct("uid")这个字段是什么类型,list.get(i)就是什么类型
List list=(List) collection.distinct("uid");
8.以下是用findAndModify方法更改数据
//UPDATE test_table SET ip = 111.111.111.333 WHERE uid=name59;
DBObject obj = new BasicDBObject();
obj.put("uid", "name59");
DBObject obj2 = new BasicDBObject();
obj2.put("ip", "111.111.111.333");
DBObject objOld = collection.findAndModify(obj, new BasicDBObject("$set",obj2));
//这里,findAndModify方法执行后,返回的DBObject内容还是旧的内容,但是数据库里的记录已经改为了新的记录
System.out.println("objOld==="+objOld);
9.以下是用update方法更改数据 注:findOne是返回满足条件的第一个记录
//UPDATE test_table SET ip = 100.100.100.333 WHERE uid=name59;
DBObject obj = new BasicDBObject();
obj.put("uid", "name59");
DBObject obj2 = collection.findOne(obj);
obj2.put("ip", "100.100.100.333");
collection.update(obj, obj2);
System.out.println("==="+collection.findOne(obj));
10.删除数据
DBObject obj = new BasicDBObject();
obj.put("uid", "name59");
collection.remove(obj);
★★★★★★★★★★★★★★★★★http://yangchunhe.iteye.com/blog/1312255★★★★★★★★★★★★★★★★★★★★★
1. 值范围查询,类似 mysql 下的 between 或者 >,< 比较操作
日期为例: (不知道mongodb的日期是什么类型呢?真的能这样做?还是我想多了呢?)
dbo.put("date",new BasicDBObject("$gte",startDate).append("$lte", endDate));
2. 模糊查询,类似于 mysql 下的 like
如下: content 为要查询的内容
String content = "aa";
Pattern pattern = Pattern.compile("^.*" + content+ ".*$", Pattern.CASE_INSENSITIVE); (★java的正则还能用到mongo上。。汗啊)
BasicDBObject dbo = new BasicDBObject();
dbo.put("content", pattern);
DBCursor cursor=collection.find(dbo);
3.普通更新字段,查找 id 为 1 的用户更新他的 userName 字段:
BasicDBObject upBdb=new BasicDBObject("$set" ,new BasicDBObject("username"," 新名字 "));
collection.update(new BasicDBObject().append("_id",1),upBdb,false,false);
4.整形字段自增 , 例如要是 commentsNums 字段自增 1 :
BasicDBObject upBdb=new BasicDBObject("$inc",new BasicDBObject("commentsNums", 1);// 加一操作
newColl.update(new BasicDBObject().append("_id",1),upBdb,false,false);
5查询数量:
条件 bdb =new BasicDBObject(“userId”,1);
newColl.find(bdb).count() ;
- 浏览: 117124 次
相关推荐
### 整理的MongoDB集群 #### 一、分布式集群搭建方案 MongoDB是一种非常流行的文档型NoSQL数据库,以其高性能、灵活性以及易于扩展而受到广泛欢迎。在处理大规模数据和高并发访问的情况下,MongoDB提供了多种机制...
### Windows 下 MongoDB 安装与使用详解 #### 一、MongoDB 简介 MongoDB 是一种基于分布式文件存储的开源数据库系统。它属于 NoSQL 数据库的一种,使用 BSON(Binary JSON)格式来存储数据,支持动态模式,使得开发...
MongoDB笔记整理 MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。下面是 MongoDB 的详细知识点: 1. 简介 MongoDB 是一个介于关系数据库和非...
MongoDB 是一种高性能、无模式、文档型的数据库,它在NoSQL数据库中非常热门,因为它的灵活性和可扩展性。MongoDB 是开源的,由C++语言编写,设计目标是提供高可用性、高性能以及易操作性。下面将详细阐述MongoDB的...
同时,定期维护(如碎片整理)和监控系统资源使用情况也很重要。 12. **升级与迁移**:随着MongoDB版本的更新,可能存在向更高版本升级的需求。升级前,务必备份数据,并根据官方文档完成迁移步骤,以确保数据安全...
- MongoDB会定期进行内存压缩,释放空闲内存块,整理内存碎片,便于重新分配。 #### 二、MongoDB内部文件与内存管理详解 **2.1 数据库文件结构** - MongoDB的数据库文件存储在磁盘上,每个数据库对应一系列文件...
数据库mongoDB整理
MongoDB 是一种流行的开源文档型数据库,以JSON格式存储数据,具有高性能、高可用性和可扩展性。在本文中,我们将深入探讨MongoDB的一些基本命令和概念。 首先,MongoDB中的复制集是一种高可用性的机制,它允许数据...
MongoDB 是一种流行的开源文档型数据库,以JSON格式存储数据,具有高性能、高可用性和可扩展性的特点。本文主要概述了MongoDB的基本操作,包括安装、启动、数据库管理以及集合的操作。 首先,安装MongoDB非常简单,...
MongoDB数据库学习整理资料,里面从数据库的安装和配置,以及配置创建数据数据,查询,修改,删除等。
使用 Scrapy、Redis、MongoDB 实现的分布式网络爬虫 本文详细介绍了使用 Scrapy、Redis、MongoDB 实现的分布式网络爬虫的设计和实现。该爬虫系统使用 Scrapy 框架来抓取网页数据,并使用 Redis 来实现分布式爬虫的...
这部分内容正在整理中,通常会涵盖Java驱动的安装、连接MongoDB、执行查询和操作文档的方法。 ### 第 5 章 其他 这部分可能包括监控、备份恢复、安全设置、性能优化等内容。MongoDB提供了丰富的管理工具,如`...
收集整理的mongodb学习资料,与大家分享。 包括: MongoDB 概念理解.pdf MongoDB_使用手册-中文版.pdf MongoDB使用手册.pdf Mongodb文档 与 php操作.pdf MongoDB应用.pdf =========================================...
### MongoDB 使用手册知识点详解 ...以上就是根据给定的文档内容提取和整理出的关键知识点。这些知识点覆盖了MongoDB的基础介绍、安装配置以及常用的基本命令操作,对于初学者来说是非常有用的参考资料。
MongoDB 是一个流行的开源文档型数据库,常用于处理大规模数据。在运维 MongoDB 时,有四个关键方面需要关注:安装部署、状态监控、安全认证和备份恢复。以下是对这些方面的详细说明: 一、安装部署 在生产环境中,...
在centos7下安装部署mongodb分片+副本集群常用命令整理,内容包含,安装、配置、启动、访问shell终端等命令
最近工作中用到MongoDB,在安装过程中走了很多弯路,整理了详细的安装说明分享给大家。 安装说明内容:MongoDB下载地址、安装MongoDB过程,配置相关文件,配置系统命令启动和开机启动。 如果有疑问请加入QQ群:...
1、里面包含Redis、MongoDB、Memcache相关的学习文档 2、对这三者有比较详细的应用场景告之,并描述出了三者之间...5、对于新手而言,提供了Redis常用命令进行归纳,并用TXT文档整理出来方便直接复制到DOS界面执行命令
springmvc与mongoDB集成所需jar包 包括spring-data-mongodb-1.7.0.jar、spring-data-commons-1.10.0.RELEASE.jar、spring-data-commons-core-1.4.1.RELEASE....对应支持的mongoDB版本为3.0.3,自己整理好的方便大家下载