设为首页 加入收藏

TOP

MongDB基础学习(四)(二)
2015-07-24 12:13:56 来源: 作者: 【 】 浏览:92
Tags:MongDB 基础 学习
find();

{ "_id" :ObjectId("54d9c3e86638c1af0d2b1204"), "name" :"c2", "cn" : 89 }

{ "_id" :ObjectId("54d9c3896638c1af0d2b1203"), "name" :"zhangsan", "cn" : 89 }

d. MongoDB的更新除了set操作符,还有其他的操作符,关于它们的功能就不做详细列出,下面列表会其他的操作符做简单描述:

序号

类型

描述

1

$inc

用法:{$inc:{field:value}}

作用:对一个数字字段的某个field增加value

示例:db.score.update({"cn":{$gt:80}},{$inc:{"cn":8}},{multi:true})

2

$unset

用法:{$unset:{field:1}}

作用:删除某个字段field

3

$push

用法:{$push:{field:value}}

作用:把value追加到field里。注:field只能是数组类型,如果field不存在,会自动插入一个数组类型

4

$pushAll

用法:{$pushAll:{field:value_array}}

作用:用法同$push一样,只是$pushAll可以一次追加多个值到一个数组字段内。

5

$addToSet

用法:{$addToSet:{field:value}}

作用:加一个值到数组内,而且只有当这个值在数组中不存在时才增加。

6

$pop

用法:删除数组内第一个值:{$pop:{field:-1}}、删除数组内最后一个值:{$pop:{field:1}}

作用:用于删除数组内的一个值

7

$pull

用法:{$pull:{field:_value}}

作用:从数组field内删除一个等于_value的值

8

$pullAll

用法:{$pullAll:value_array}

作用:用法同$pull一样,可以一次性删除数组内的多个值。

9

$rename

用法:{$rename:{old_field_name:new_field_name}}

作用:对字段进行重命名

4.4 MongoDB 查询文档

(1)find() 方法

要从MongoDB 查询集合数据使用MongoDB 的 find() 方法,还存在一个findOne()方法,它是返回一个文件。

(2)语法

基本的find()方法语法如下:db.COLLECTION_NAME.find()。此方法将在非结构化的方式显示所有的文件,要显示在一个格式化的方式,在后面跟上pretty() 方法。

(3)示例

> db.web_info.find().pretty()

{ "_id" :ObjectId("54d82d94dd625e55ab00b9b2"), "address" :"www.hth.tv" }

{

"_id": ObjectId("54d87cdfebde50baebb6c4ca"),

"city": "西安",

"address": "www.hth.tv"

}

{

"_id": ObjectId("54d87cdfebde50baebb6c4c9"),

"name": "好童话",

"des": "这是一个o2o的vr旅游平台"

}

(4)RDBMS Where子句和MongoDB等同语句,要查询文件的一些条件的基础上,比较如下:

操作

语法

例子

RDBMS 等同

Equality

{:}

db.score.find({"cn":88}).pretty()

where cn = 88

Less Than

{:{$lt:}}

db.score.find({"num":{$lt:50}}).pretty()

where num < 50

Less Than Equals

{:{$lte:}}

db.score.find({"num":{$lte:50}}).pretty()

where num <= 50

Greater Than

{:{$gt:}}

db.score.find({"num":{$gt:50}}).pretty()

where num > 50

Greater Than Equals

{:{$gte:}}

db.score.find({"num":{$gte:50}}).pretty()

where num >= 50

Not Equals

{:{$ne:}}

db.score.find({"num":{$ne:50}}).pretty()

where num != 50

(5)AND与OR在MongoDB中用法

a. MongoDB的与操作

在 find() 方法,如果通过多个键分离',',本语法如下所示:db.score.find({key1:value1, key2:value2}).pretty()

b.MongoDB的或操作

MongoDB的或操作查询,需要使用$or关键字。OR 基本语法如下所示:

>db. score.find(

{

$or: [

{key1: value1}, {key2:value2}

]

}

).pretty()

c.MongoDB的与和或进行组合查询 示例

> db.web_info.find({$and:[{"address": "www.hth.tv"},{$or:[{"name" : "好童话"},{"city" : "西安"}]}]}).pretty()

{

"_id": ObjectId("54d87cdfebde50baebb6c4ca"),

"city": "西安",

"address": "www.hth.tv"

}


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇mssql返回表的创建语句 下一篇一个完整的以在线重定义方式普通..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: