mongoVue增删改查(含模糊查询)
1、 精确查询 1)右键点击集合名,再左键点击Find 或者直接点击工具栏上的Find 2)查询界面,包括四个区域 {Find}区,查询条件格式{"sendId":"000101"}表示查询sendId=000101的记录,(注:mongodb区分大小写,写成{"sendid":"000101"}会查询不到)查询条件包
在mongo中插入新的字段,并设置默认值:
db.readingcpmonit.update({},{$set:{"entityType":1}},false,true)
第四个参数为设置更新多条数据。
在mongodataDao中进行直接操作:
public List<RefreshCacheLog> getRefreshCacheLogs(String indexName, String []hosts) {
Criteria IPconditons=new Criteria();
List<Criteria>lst=new ArrayList<Criteria>();
for(String host:hosts)
{
lst.add(where("IP").is(host));
}
Criteria []criterias=lst.toArray(new Criteria[lst.size()]);
IPconditons.orOperator(criterias);
Criteria indexNameCondition = where("indexName").is(indexName);
Query query = new Query().addCriteria(indexNameCondition).addCriteria(IPconditons);
return findQueryResult(query);
}
创建唯一索引
db.cartoonchapter.ensureIndex({"id": 1}, {unique: true})
创建索引,并指定名称
db.user.ensureIndex({"name":1},{"name":"IX_name"})
聚合查出条数大于1的数据,对应group having count
创建唯一索引
db.cartoonchapter.ensureIndex({id: 1}, {unique: true})
聚合查出条数大于1的数据
db.col.aggregate( [
{ $group: { _id: { userId: "$userId", name: "$name" },
count: { $sum: 1 } } },
{ $match: { count: { $gt: 1 } } },
{ $project: { _id: 0,
userId: "$_id.userId",
name: "$_id.name",
count: 1}}
] )
使用id
db.cartoonchapter.aggregate( [
{ $group: { _id: { id: "$id" },
count: { $sum: 1 } } },
{ $match: { count: { $gt: 1 } } },
{ $project: { _id: 0,
id: "$_id.id",
count: 1}}
] )
使用_id删除
db.cartoonchapter.remove( {"_id": ObjectId("57bff8e2e4b06b4b81e49c91")});
db.col.aggregate( [
{ $group: { _id: { userId: "$userId", name: "$name" },
count: { $sum: 1 } } },
{ $match: { count: { $gt: 1 } } },
{ $project: { _id: 0,
userId: "$_id.userId",
name: "$_id.name",
count: 1}}
] )
使用id
db.cartoonchapter.aggregate( [
{ $group: { _id: { id: "$id" },
count: { $sum: 1 } } },
{ $match: { count: { $gt: 1 } } },
{ $project: { _id: 0,
id: "$_id.id",
count: 1}}
] )
使用_id删除
db.cartoonchapter.remove( {"_id": ObjectId("57bff8e2e4b06b4b81e49c91")});
按照条件进行删除
1、 精确查询
获取最大值
db.audit_document.findOne({$query:{},$orderby:{_id:-1}})
db.bgtemplate.remove( {"id":{"$lt":51}} )
多条件进行查询:
db.audit_document_history.find({"_id":{"$gte":0,"$lte":1000000},"source":1}).count()
db.audit_document_history.find({"_id":{"$gte":0,"$lte":1000000},$or:[{"source":2},{"source":4},{"source":5},{"source":6},{"source":7},{"source":10},{"source":12},{"source":18}]}).count()
mongo批量数据更新
重置特定的数据为特定值:
db.leitestindex.update({},{$set:{"versonControl":-1}},{multi:true})
将mongo中的某个字段全部清空
db.leitestindex.update({},{$unset:{versionControl:-1}},false,true)
db.course.find( { "lectures.lectures_count": { $exists: true } } )查询course表中,存在lectures_count字段的记录信息
1)右键点击集合名,再左键点击Find
或者直接点击工具栏上的Find
2)查询界面,包括四个区域
{Find}区,查询条件格式{"sendId":"000101"}表示查询sendId=000101的记录,
(注:mongodb区分大小写,写成{"sendid":"000101"}会查询不到)
查询条件包含and时,格式为:{"sendId":"000101","operParam5":"vfre"}
查询条件包含or时,格式为{$or:[{"sendId":"000101"},{"sendId":"1234567890"}]}
{Fields}区,表示查询的字段值,不填默认显示所有字段。Fields区的格式与Find区类似,如:{"id":"","sendId":"","appId":""}
{sort}区,{"id":1}表示按照id升序排序,{"id":-1}表示按照id降序排序
Skip和Limit联合起来使用,相当于查询MySQL中的limit语句
(注:Skip和Limit的值不能为空,否则会报错)
2、模糊查询
查询条件中包含like时,格式为:{"operParam5":new RegExp(".*set.*")}
这里使用到简单的正则表达式:.*表示任意多个字符,相当于like中的%。
如果查询operParam5 like ‘%set%’,则写成{"operParam5":new RegExp(".*set.*")}
如果查询operParam5 like ‘%set’,则写成{"operParam5":new RegExp(".*set")}
如果查询operParam5 like ‘set%’,则写成{"operParam5":new RegExp("set.*")}
二、 新增
1)右键点击集合名,再左键点击Insert Document…
2)在弹出的输入框中,填入要插入记录的Bson格式数据
3)点击Insert,插入成功
三、 编辑
1) 点击菜单栏的Update按钮
2) 在左侧输入查询条件,右侧输入要更新的字段名称和字段值
如下示例实现将id= aaaa84e71ffb470ca8c80d309c4bc835的记录的sendId字段值,修改为000001
3)之后,点击updateAll更新所有记录。
四、 删除
3) 点击菜单栏的Remove按钮
4) 输入要删除的记录的查询条件,
如下示例删除id=aaa684e71ffb470ca8c80d309c4bc835的记录
3)点击Remove按钮,弹出确认提示框,点击Remove即可
db.es_route_property.update({"_id":89},{$set:{"end":9223372036854775807}}, { upsert: true })
db.es_route_property.remove({"_id":{$gt:89}})
更多推荐
所有评论(0)