首页 > 数据库 >mongodb常用语句

mongodb常用语句

时间:2024-07-05 13:08:59浏览次数:23  
标签:语句 常用 name mongodb 数据库 db 查询 student age

mongodb常用语句

1. 数据库操作

1.1 创建数据库

  • 创建数据库 (如果数据库存在则创建,否则则进入该数据库)

    use blog

    注:创建数据库后,表中并不会出现在数据库列表中,需要添加数据后,才会出现在数据库列表中

1.2 修改数据库

  • 修改数据库的名称

    • 方法1,拷贝当前数据库,再删除旧数据库

      db.copyDatabase("blog","blog_new")
      use blog_new
      db.dropDatabase()
      
    • 方法2,复制数据库中的集合

      db.adminCommand({renameCollection:"blog.table1",to:"blog_new.table1"})

1.3 查询数据库

  • 查询mongodb中包含的数据库

    show dbs

  • 查询当前使用的数据库名称

    db

1.4 删除数据库

  • 删除数据库 (删除的是当前正在使用的数据库)

    db.dropDatabase

2. 表操作

2.1 创建数据库表

  • 创建一张数据库表

    db.createCollection("student")

2.2 修改数据库表名

  • 修改数据库的表名称

    db.student.renameCollection("student_new")

2.3 查询

  • 查询数据库中的所有表

    show collections

2.4 删除

  • 删除数据库中的某张表

    db.students.drop()

3. 数据操作

3.1 插入数据

  • 插入一条数据

    db.student.insert({"name":"boolean"})

  • 插入多条数据 (此处插入便于后面进行查询)

    db.student.insert([{
        "_id": "T001",
        "name": "yjt",
        "age": 23,
        "sex": "man",
        "score": {
          "english": 76,
          "chinese": 74,
          "math": 67
        },
        "teacher": [{
            "name": "赵",
            "age": 43,
            "subject": "math"
          },
          {
            "name": "钱",
            "age": 54,
            "subject": "chinese"
          },
          {
            "name": "钱",
            "age": 23,
            "subject": "english"
          }
        ],
        "habit": ["eat", "code"]
      },
      {
        "_id": "T002",
        "name": "yan",
        "age": 24,
        "sex": "woman",
        "score": {
          "english": 66,
          "chinese": 77
        },
        "teacher": [{
            "name": "钱",
            "age": 54,
            "subject": "chinese"
          },
          {
            "name": "钱",
            "age": 23,
            "subject": "english"
          }
        ],
        "habit": ["run", "code"]
      },
      {
        "_id": "T003",
        "name": "tao",
        "age": 28,
        "sex": "man",
        "score": {
          "english": 88
        },
        "teacher": [{
          "name": "钱",
          "age": 23,
          "subject": "english"
        }],
        "habit": ["read", "movie"]
      }
    ])
    

3.2 更新表中的数据

  • 向数组中插入一条数据 (此处向habit中插入一条数据)

    db.student.update({"_id":"T003"},{$addToSet:{"habit":"music"}})

  • 删除表中的某一个字段**(此处删除id为T001的habit字段)

    db.student.update({"_id":"T001"},{$unset:{"habit":""}},false,true)

  • 更新某个字段的值**(此处将id为T001的age更新为20)

    db.student.update({"_id":"T001"},{$set:{"age":20}})

  • 为某张表添加某个字段 (此处将id为T003的数据添加一个habit字段)

    db.student.update({"_id":"T003"},{$set:{habit:["read","music"]}},{multi:true})

  • 添加一个字段(url 代表表名 , 添加字段 content。 字符串类型)

    db.url.update({}, {$set: {content:""}}, {multi: 1})

  • 删除一个字段

    db.url.update({},{$unset:{'content':''}},false, true)

3.3 删除表中的数据

  • 删除数据库中符合条件的数据 (此处删除name为yjt的数据)

    db.student.remove({"name":"yjt"})

  • 删除数据库中所有的数据

    db.student.remove({})

3.4 查询语句

  • 查询一张表的所有数据

    db.student.find()

  • 查询一张表的数据,按照某个字段排序 (此处按照排序)

    db.student.find().sort({"age":1})

    注:1为升序,-1为降序

  • 查询一张表的数据,按照条件查询 (此处查询id为T003的数据)

    db.student.find({"_id":"T003"})

  • 查询一张表的某个字段

    db.student.find({},{"_id":1,"name":1,"teacher":1})

    注:find()中第一个参数为查询条件,第二个参数为要查询的字段

  • 分组查询 (根据性别分组)

    [{
        "sex": "man",
        "num": 2.0
      },
      {
        "sex": "woman",
        "num": 1.0
      }
    ]
    
  • 查询表中一个数组包含该数据 (查询habit包含run的数据)

    db.student.find({"habit":{$in:["run"]}})

  • 查询文档中一个数组是否包含该数据 (查询teacher的name为钱并且age为23的数据)

    db.student.find({ "teacher": { $elemMatch: { "name": "钱", "age": 23} } })

  • 查询某个字段是否存在

    db.student.find({"habit":{$exists:false}})

    true查询该字段存在的数据,false查询该字段不存在的数据

  • 模糊查询 (查询name中包含y的数据)

    db.student.find({'name':/y/})

本文档持续更新,我会将我遇到的mongdb语句一直放在上面

MongoDB修改数据库名-其實很簡單

Runoob-Mongodb教程

标签:语句,常用,name,mongodb,数据库,db,查询,student,age
From: https://www.cnblogs.com/booleandev/p/18285602/mongodb-commonly-used-statements-yxefo

相关文章

  • VBA常用的字符串内置函数
    前言在VBA程序中,常用的内置函数可以按照功能分为字符串函数、数字函数、转换函数等等,本节主要会介绍常用的字符串的内置函数,包括Len()、Left()、Mid()、Right()、Split()、String()、StrConV()等。本节的练习数据表以下表为例:1.使用Len()计算字符串长度示例:Sheet1的A......
  • SQL Server 中的 DBCC(Database Console Commands)命令提供了一系列用于数据库管理和诊
    SQLServer中的DBCC(DatabaseConsoleCommands)命令提供了一系列用于数据库管理和诊断的工具和功能。以下是一些常用的DBCC命令及其功能:DBCCCHECKDB:用于检查整个数据库的物理和逻辑一致性。sqlCopyCodeDBCCCHECKDB('MyDatabase');DBCCCHECKTABLE:检查指定表......
  • 常用正则表达式
    字符\:特殊字符、转义字符^:正则表达式的开始$:正则表达式的结束*:等于{0,},即0到多+:等于{1,},即1到多?:等于{0,1},即0到1{n}:匹配确定的次数,n次{n,}:匹配大于n的次数,等于n*{n,m}:匹配大于n,小于m的次数.:匹配除“\n”之外的任何单个字符。\d:匹......
  • qt 入门常用类理解(涉及QMessageBox,Layout,Spacers,Splitter,Buuddy,LoginApp,QFile,
    1.QMessageBoxQMessageBox::Yes QApplication::quit();QMessageBox::exec用于在模态(阻塞式)对话框中显示一个消息框,并等待用户的响应。这个函数通常用于在应用程序中显示消息、警告或询问对话框,并等待用户采取适当的操作后继续执行。int QMessageBox::exec()exec 函数没有......
  • 人工智能AI介绍及常用软件在国产化平台的支持情况
    一、简介(一)定义详解人工智能(ArtificialIntelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智......
  • Microsoft SQL Server 2012 中常用的 Transact-SQL 命令示例,涵盖了数据库管理和查询操
    MicrosoftSQLServer2012中常用的Transact-SQL命令示例,涵盖了数据库管理和查询操作:创建数据库sqlCopyCodeCREATEDATABASEYourDatabaseName;删除数据库sqlCopyCodeDROPDATABASEYourDatabaseName;创建表sqlCopyCodeCREATETABLEEmployees(EmployeeIDIN......
  • Linux常用命令快速回顾
    目录帮助命令软件安装工作目录查看、切换pwd(printworkdirectory)打印当前工作目录cd(changediretory)tree[目录名]——以树状图列出文件目录结构文件/目录创建、删除、查找、查看mkdir创建目录touch 创建文件rm删除文件find[路径]-name'*.py'查找文件......
  • Delphi 常用控件之TlistView总结
    TlistView组件功能:(1)TListView控件可以用来显示各项带图标的列表,包括大图标和小图标的;也可以用来显示带有子项的列表,Windows操作系统的资源管理器中文件夹窗口就是最好的应用例子,就是我们打开"我的电脑"后能够看到各个盘符的界面(2)TListView控件基本能实现和DBGrid控件一......
  • 当管理和维护 Active Directory 环境时,有一些基础的 PowerShell 命令可以帮助进行常规
    当管理和维护ActiveDirectory环境时,有一些基础的PowerShell命令可以帮助进行常规的检查和管理操作。以下是一些常用的基础检查命令示例:1.获取特定用户信息powershellCopyCode#获取特定用户的基本信息Get-ADUser-Identity"username"这个命令用于获取特定用户的基本......
  • Ubuntu常用指令
    Ubuntu常用指令如下:指令操作描述lsls-l(ll)ls-a以长列表格式显示文件和目录的详细信息显示所有文件,包括隐藏文件cdcd/path/to/directory切换到指定的目录pwdpwd打印当前工作目录cpcpsourcedestination将源文件或目录复制到目标位置mvmvoldnamenewnamemvfile1file2des......