MongoDB简单常用命令
项目过程笔记
1. 查看数据库
1 | show dbs |
2. 查看文档
1 | show collections |
3. CSV导入
Excel另存为CSV文件
第一行处理成数据库对应的字段名
导入命令
--headerline 忽略表头1
mongoimport -d 数据库名 -c 文档名 --type csv --headerline --file 要导入的文件
4. 聚合管道操作符
方法名 | 描述 |
---|---|
$sort | 将输入文档排序后输出。 |
$limit | 用来限制MongoDB聚合管道返回的文档数。 |
$unwind | 将文档中的某一个数组类型字段拆分成多条,每条包含数组中的一个值。 |
$sample | |
\(match | 用于过滤数据,只输出符合条件的文档。\)match使用MongoDB的标准查询操作。 | |
$redact | |
$skip | 在聚合管道中跳过指定数量的文档,并返回余下的文档。 |
$group | 将集合中的文档分组,可用于统计结果。 |
$project | 修改输入文档的结构。可以用来重命名、增加或删除域,也可以用于创建计算结果以及嵌套文档。 |
$geoNear | 输出接近某一地理位置的有序文档。 |
5. 聚合操作
1
2
3
4db.orders.aggregate([
{$match: {status:"A"}},
{$group: {_id:"cust_id",total: {$sum:"$amount"}}}
])
$match:首先筛选 status:"A" 的文档
$group:然后以cut_id分组,并计算各组amount总和
$project 中使用 $cond对字段进一步加限制条件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16db.books.aggregate( [
{
$project: {
title: 1,
"author.first": 1,
"author.last" : 1,
"author.middle": {
$cond: {
if: { $eq: [ "", "$author.middle" ] },
then: "$$REMOVE",
else: "$author.middle"
}
}
}
}
] )