MongoDB

MongoDB基本语法——数据库操作

      db:查看当前指向的数据库

      show dbs:查看当前所有的数据库

      use <数据库名称>:指向一个数据库

      Use数据库不会创建数据库,如果操作数据会自动创建数据库


测试代码:

db.dropDatabase():删除当前指向的数据库

注意:慎用,要先db看一下在哪个数据库下,有些数据库不能这样删除,其他数据库可能会受影响的。

测试代码:

MongoDB基本语法——集合操作


show collections:查看当前数据库所有集合

db.createCollection([, options]):创建一个集合

db.<集合名称>.drop():删除指定的集合

测试代码1:查看当前数据库所有集合

测试代码2:创建一个集合

测试代码3:db.<集合名称>.drop():删除指定的集合

MongoDB基本语法——数据类型

     ObjectID:文档id

     String:字符串

     Boolean:布尔值

     Integer:整数

     Double:浮点数

     Arrays:数组或者列表

     Object:嵌入的文档

     Null:空值

     Timestamp:时间戳

      Date:日期时间


MongoDB基础语法——增加数据

     语法:db.<集合名称>.insert(文档)

     集合可以是原来存在的,可以是不存在的

     文档:就是JSON格式【python中的dict】表示的数据(dict)

     简单查询:db.<集合名称>.find() 查询指定集合的数据

测试代码1:insert()

测试代码2:insertOne()只能插入一条数据

测试代码3:insertMany()可以插入一条或者多条数据。


MongoDB基础语法——更新数据

      语法:db.<集合名称>.update(  条件(替换的),替换过后的内容 ,[multi:])

      指定属性更新:$opration

      multi:默认false更新符合条件第一条,设置true全集合更新

测试代码1:不指定内容相当于替换里面的全部内容。

测试代码2:$set使用    指定属性更新

  情况1: $set如果这个指定的属性不存在,那么就是在原来的基础上添加上这个属性。

                   不存在~添加

  情况2: $set如果这个指定的属性存在,那么就是指修改这个属性。   存在~修改

测试代码3:当条件中有两个或多个满足条件的时候,update默认替换一个。不会

                    替换全部满足条件的。因为multi默认值为false。

测试代码4:multi默认值为false,为ture的时候表示全部符合条件的全部更新

                  注意:必须要配合   指定属性更新:$set使用。   

MongoDB基础语法——保存数据

语法:db.<集合名称>.save(文档)

特征:[_id]如果数据不存在~添加,如果数据存在~修改

注意:save是通过id来修改的,其他的不行。

MongoDB基础语法——删除数据

语法:db.<集合名称>.remove(, {justOne:})

参数query:删除文档的条件

参数justOne:设置为true或者1,删除一条;默认false删除多条

测试代码1:参数justOne:默认false删除多条

测试代码2:参数justOne:设置为true或者1,删除一条


MongoDB基础语法——查询数据

1、基本查询:

       find([{文档条件}]):全集合查询

       findOne([{文档条件}]):查询第一个

       pretty():将查询结果格式化展示

2、比较运算符(关系运算符)

默认判断,无运算符

$lt:little~小于 <  less than

$lte:little or equals~小于等于 <=

$gt:granter~大于 >

$gte:granter or equals~大于等于 >=

代码1:

3、逻辑运算符

逻辑与:并且运算,默认操作,无运算符

逻辑或:或者运算,$or

逻辑否:not

4、范围运算符

$in:判断指定条件是否包含在某个范围内

$nin:判断指定条件是否不包含在某个范围内

5、正则条件

/reg/:普通正则表达式

$regex:指定正则表达式

6、自定义条件

$where:通过函数自定义条件[JS函数]

指定函数中,返回boolean类型的值

this表示每个要查询的文档

eg:db.student.find({$where:function() {return this.gender == “男” }})

7、数据查询——限制查询条数

.limit(count)

8、数据查询——跳过记录行数

.skip(num)


注意:.skip(num1).limit(num2),跳过记录行数后,再限制查询条数

9、数据查询——投影:查询指定的域

find({}, {投影字段:1/0})

10、数据查询——排序

sort({字段:1/-1, ...})

1.表示升序排列 -1表示降序排列,可以指定多个字段

11、数据查询——统计

count()

.count()

db.<集合名称>.count({条件})

两种操作方式

1.查询结果,通过count()统计数据

2. 通过count()直接添加条件统计数据

12、数据查询——去重

db.<集合名称>.distinct(“去重域名称”, {条件})

eg:查询数据列表中,所有的年龄分布情况   db.student.distinct(“age”, {})

你可能感兴趣的:(MongoDB)