mongo.dml
2016-12-13 11:03:50 65 举报
AI智能生成
为你推荐
查看更多
mongodb
作者其他创作
大纲/内容
mongo.dml
database连接
database操作
use mydb
切换数据库
创建数据库
数据库为空,则在show时不显示
所有修改数据库操作基于mydb
show dbs
查看所有数据库
db
查看当前use的数据库
db.dropDatabase()
删除数据库
collection操作
所有操作基于数据库mydb执行
db.collection.drop()
删除集合
document操作
所有操作基于数据mydb执行
数据插入
db.mycol.insert({\"key\" : \"value\"})
db.mycol.insert(myvar)
myvar=({\"key\" : \"val\"})
数据查找
db.col.find()
查看collection下所有document
逻辑条件
等于
{<key>:<value>}
小于\t
{<key>:{$lt:<value>}}
小于或等于
{<key>:{$lte:<value>}}
大于
{<key>:{$gt:<value>}}
大于或等于
{<key>:{$gte:<value>}}
不等于
{<key>:{$ne:<value>}}
大于并小于
and
{\"key1\" : \"value1\
key1 = value2 and key2 = value2
or
{ \"key\" : \"value\
key = value and ( key1 = value1 or key2 = value2)
类型条件
类型映射
Double : 1
String : 2
Object : 3
Array : 4
Binary data : 5
Undefined : 6
已废弃
Object id : 7
Boolean : 8
Date : 9
Null : 10
Regular Expression : 11
JavaScript : 13
Symbol : 14
JavaScript (with scope) : 15
32-bit integer : 16
Timestamp : 17
64-bit integer : 18
Min key : 255
使用-1
Max key : 127
db.col.find({<key> : { $type : 2}} )
查询数量限制
limit
limit(number)
指定查询返回记录数
skip
skip(number)
指定从记录数中跳过前number条记录
查询排序
sort({<key> : 1})
1- 升序排序
-1 - 降序排序
db.col.find().pretty()
数据更新
<query>
查询条件
<update>
更新字段及结果
upsert
可选,若不存在,true-插入;false-不插入
multi
可选,true-只更新查找到的第一条记录;false-更新所有查找到的记录
writeConcern
可选,抛出异常的级别
document完整文档数据,需要指明id进行更新
数据删除
可选,查询条件
justOne
可选,默认为false,true-只删除一条;false-删除所有记录
span style=\
聚合操作
MongoDB的聚合管道将MongoDB文档在一个管道处理完毕后将结果传递给下一个管道处理。管道操作是可以重复的。
操作
$project
修改输入文档的结构。可以用来重命名、增加或删除域,也可以用于创建计算结果以及嵌套文档。
$match
用于过滤数据,只输出符合条件的文档。$match使用MongoDB的标准查询操作。
$limit
用来限制MongoDB聚合管道返回的文档数
$skip
在聚合管道中跳过指定数量的文档,并返回余下的文档
$unwind
将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值
$group
$sum
select sum(group_by_key) * num as output_key from col group by group_by_key
$avg
$min
$max
db.mycol.aggregate({$group : {_id : \"$span style=\
$push
aggregate([{$group : {_id : \"$title_var\
将聚合输出的avg_key转化为数组
$addToSet
aggregate([{$group : {_id : \"$span style=\
在结果文档中插入值到一个数组中,但不创建副本。
$first
aggregate([{$group : { _id : \"$span style=\
根据资源文档的排序获取第一个文档数据。
$last
根据资源文档的排序获取最后一个文档数据
$sort
将输入文档排序后输出
$geoNear
输出接近某一地理位置的有序文档
index
创建索引
排序
1-升序
2-降序
background
font color=\"#333333\" face=\
true-在后台创建索引,执行期间不阻塞其他操作
false-默认,执行期间阻塞其他操作
unique
true-唯一索引
false-默认,非唯一索引
name
string-索引的名称。若未指定,通过过连接索引的字段名和排序顺序生成一个索引名称
dropDups
bool,创建唯一索引时删除重复记录
true-删除,创建唯一索引
false-默认,创建非唯一索引
sparse
bool,对文档中不存在字段数据不启用索引
true-在索引字段中不会查询出不包含对应字段的文档
false-默认
expireAfterSeconds
v
索引的版本号,默认的索引版本取决于mongod创建索引时运行的版本。
weights
default_language
对于文本索引,该参数决定了停用词及词干和词器的规则的列表。 默认为英语。
language_override
对于文本索引,该参数指定了包含在文档中的字段名,语言覆盖默认的language,默认值为 language。
范围
集合中索引不能超过64个
索引名的长度不能超过125个字符
一个复合索引最多可以有31个字段
不能使用索引
正则表达式及非操作符
算术运算符
$where 子句
ObjectId
格式
时间戳
1~4字节
机器标示码
5~7字节
进程ID
8~9字节
随机数
10~12字节
DBRef
数据库名称
ref
集合名称
id
引用id
0 条评论
回复 删除
下一页