主页
文章
分类
系列
标签
MongoDB
发布于: 2014-7-1   更新于: 2014-7-1   收录于: 数据库 , Cheat sheet
文章字数: 470   阅读时间: 1 分钟  

基本操作

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#连接 mongodb 默认://127.0.0.1:27017
mongo
mongo --host <host> --port <port> -u <user> -p <pwd>

# 查看所有数据库
show dbs

# 查看当前数据库
db

# 新建或切换数据库
use <database_name>

# 删除数据库
db.dropDatabase()

# 创建集合
db.createCollection('posts')

# 查看所有集合
show collections

插入数据

单行插入

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
db.posts.insert({
  title: 'Post One',
  body: 'Body of post one',
  category: 'News',
  tags: ['news', 'events'],
  user: {
    name: 'John Doe',
    status: 'author'
  },
  date: Date()
})

多行插入

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
db.posts.insertMany([
  {
    title: 'Post Two',
    body: 'Body of post two',
    category: 'Technology',
    date: Date()
  },
  {
    title: 'Post Three',
    body: 'Body of post three',
    category: 'News',
    date: Date()
  },
  {
    title: 'Post Four',
    body: 'Body of post three',
    category: 'Entertainment',
    date: Date()
  }
])

查询数据

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
db.posts.find()
db.posts.find().pretty()

db.posts.findOne({ category: 'News' })
db.posts.find({ category: 'News' })     #查询多行

db.posts.find({ title: 'Post One' }, {
  title: 1,
  author: 1
})

# 查询指定行数
db.posts.find().limit(2).pretty()
db.posts.find().limit(2).sort({ title: 1 }).pretty()

# 字符串查找
db.posts.find({
  $text: {
    $search: "\"Post O\""
  }
})

# 遍历查询结果
db.posts.find().forEach(function(doc) {
  print("Blog Post: " + doc.title)
})

# 查看集合数据数量
db.posts.find().count()
db.posts.find({ category: 'news' }).count()

更新数据

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
db.posts.update({ title: 'Post Two' },
{
  title: 'Post Two',
  body: 'New body for post 2',
  date: Date()
},
{
  upsert: true
})

# 更新指定字段
db.posts.update({ title: 'Post Two' },
{
  $set: {
    body: 'Body for post 2',
    category: 'Technology'
  }
})

删除数据

1
db.posts.remove({ title: 'Post Four' })

排序

1
2
db.posts.find().sort({ title: 1 }).pretty()   # ASC
db.posts.find().sort({ title: -1 }).pretty()  # DESC

索引

1
2
3
4
5
6
7
8
9
# 添加索引
db.posts.createIndex({ title: 1 })

# 删除索引
db.posts.dropIndex("title_1")

# 隐藏/取消隐藏索引
db.posts.hideIndex("title_1")
db.posts.unhideIndex("title_1")
Andy
Welcome to andy blog
目录
相关文章
Redis
启动 Redis 1 2 3 4 redis-server /path/redis.conf # 指定配置文件启动 redis redis-cli # 开启 redis 客户端 systemctl restart redis.service # 重启 redis systemctl status redis # 检查 redis 运行状态 字符串 1 2
2019-12-24
MySQL
MySql 安装 Mac Linux 基本操作 导入导出 1 2 mysqldump -h hostname -u username -p database_name -P port > file.sql # Export database mysql -u username -p database_name < file.sql # Import database 连接 1 2 3 show status where `variable_name` = 'Threads_connected';
2015-8-3
Go
安装 前往 官网 下载 go1.19.4.linux-amd64.tar.gz 1 2 3 tar -C /usr/local/ -xzf go1.19.4.linux-amd64.tar.gz export PATH=$PATH:/usr/local/go/bin go version 看到版本号代表 go 安装成功 编译器命令 1 2 3 4 5 6 7 8 9 10 11 12
2019-12-30
C#
数据类型 类型 大小 举例 String 2 bytes/char s = “reference” bool 1 byte b = true char 2 bytes ch = ‘a’ byte 1 byte b = 0x78 short 2 bytes val = 70 int 4 bytes val = 700 long 8 bytes val
2019-7-13
Python
常规 Python 对大小写敏感 Python 的索引从 0 开始 Python 使用空白符(制表符或空格)来缩进代码,而不是使用花括号 帮助 获取主
2018-10-6
Nginx
Nginx 常用命令 官方文档 1 2 3 4 5 sudo nginx -t # 检测配置文件是否有错误 sudo systemctl status nginx # nginx 当前的运行状态 sudo systemctl reload nginx # 重新加
2018-2-12
Linux
bash 目录操作 文件操作 进程管理 管道符 竖线 | ,在 linux 中是作为管道符的,将 | 前面命令的输出作为 | 后面的输入 1 grep
2018-1-12
Core Dump
Core Dump 设置 生成 core 默认是不会产生 core 文件的 1 ulimit -c unlimited # -c 指定 core 文件的大小,unlimited 表示不限制 core 文件
2017-12-21
GDB
帮助信息 1 2 3 4 5 6 7 help # 列出命令分类 help running # 查看某个类别的帮助信息 help run # 查看命令 run 的帮助 help info # 列出查
2017-12-10
Batch
什么是批处理 批处理(Batch),也称为批处理脚本,批处理就是对某对象进行批量的处理 批处理文件的扩展
2017-11-5