mongodb linux基本启动 基础增删改 mysql语法的对比
一、主流数据源类型
还存在自定义数据源以及REST接口数据,共6中数据源。
二、linux下启动连接数据库
进去mongodb的目录启动服务:mongo --host 192.168.320.826
显示所有数据库信息:show dbs;
显示当前数据库:db
进入某个数据库:use default;
显示所有集合:show collections;
删除集合:db.xx01.drop();
三、数据库的增删改查
1、基本介绍:非关系型数据库
2、insert插入数据:
db.wzxtest.insert({"name":"xiaoming","age":22,"sex":"男","salary":21111,"time":2020-12-22});
3、count统计总条数:
db.wzxtest.count(),类似mysql语法中的:select count(*) from 表名。
db.wzxtest.count({"name":"C"}),类似mysql语法中的:select count(*) from wzxstudents2 where name="bb"
db.wzxtest.find({"name":"C"}).count()等同于db.wzxtest.count({"name":"C"})
4、select查询:
db.wzxtest.find(),类似mysql语法中的:select * from 表名。
db.wzxtest.find( { } )等同于db.wzxtest.find()
db.wzxtest.find({"name":"C"}),类似mysql语法中的:select * from 表名 where name="C"。
db.wzxtest.find({ name:"C", "age": 23},{ name:1,salary:1,_id:0 }),类似mysql语法中的:select name,age from 表名 where name="C" and age=22。
db.wzxtest.findOne(),类似mysql语法中的:select * from 表名 limit 1。
5、distinct去重
db.wzxtest.distinct("name"),类似mysql语法中的:select distinct name from wzxstudents2
6、运算符比较
不等于:db.wzxtest.find({"name":{"$ne":"C"}})
大于:db.wzxtest.find({"age":{"$gt":30}}),
大于等于:db.wzxtest.find({"age":{"$gte":53}})
小于:db.wzxtest.find({"age":{"$lt":30}})
小于等于:db.wzxtest.find({"age":{"$lte":22}})
在10-30范围内:db.wzxtest.find({"age":{"$gte":10,"$lte":30}})
7、逻辑运算
in:db.wzxtest.find({"name":{"$in":["啊C","wzxs"]}})
not in:db.wzxtest.find({"name":{"$nin":["啊C","wzxs"]}})
and:db.wzxtest.find({"name":"C","sex":"baomi"})
or:db.wzxtest.find({"$or":[{"name":"C"},{"name":"wzxs"}]})
8、通配符查找
查询name包含:db.wzxtest.find({name:/C/}),类似mysql语法中的:select * from wzxstudents2 where name like"%bb%"
查询name开头:db.wzxtest.find({name:/^啊/}),类似mysql语法中的:select * from wzxstudents2 where name like"bb%"
9、投影:选择取出部分字段:参数为字段与值,1表示显示,0表示不显示,_id默认都会显示,类似mysql语法中的:select 字段1,字段2 from 表名。
语法:db.wzxtest.find({},{name:1,age:1})
语法:db.wzxtest.find({},{_id:0,name:1,age:1}),类似mysql语法中的:select * from wzxstudents2 where name="bb"
10、排序:1表示升序,-1表示降序
语法:按age升序:db.wzxtest.find().sort({age:1})
语法:按age降序:db.wzxtest.find().sort({age:-1})
11、limit与skip并部分先后顺序,skip类似与mysql中的start
查询5以后:db.wzxtest.find().skip(5)
查询前5:db.wzxtest.find().limit(5)
查询5-10:db.wzxtest.find().limit(7).skip(4)
12、修改,若id存在则修改不存在即为新增
db.wzxtest.save({"name":"喵咩咩咩11","_id":"5ec4f06266d60018180806a0"})
13、删除记录
删除某条匹配的数据:db.wzxtest.remove({"_id":"5ec4f06266d60018180806a0"})
删除所有数据:db.xxxx.remove({ })
删除匹配到的第一个值:db.wzxtest.remove({"name":"C"},{justOne:true})
14、删除集合
删除集合:db.xxxx.drop(),类似mysql语法中的:drop table
15、集合操作
统计男女人数:db.wzxtest.aggregate({$group:{_id:"$sex"}})
16、索引:1表示升序,-1表示降序
新增索引:db.wzxtest.ensureIndex({name:1})
查询索引:db.wzxtest.getIndexes()
查询耗时:db.wzxtest.find().explain('executionStats')
17、数据库的备份与恢复
备份参数: -h :服务器地址可以指定端口号,-d:需要备份的数据库地址,-0:备份数据的存在地址
mkdir testbak
mongodump -h 1.1.1.1:27017 -d testdb -o /home
恢复数据参数: -h:服务器地址与指定端口号,-d:恢复数据库的实例,--dir :备份数据所在位置
mongorestore -h 1.1.1.2:27017 -d test2 --dir /home
mongodb linux基本启动 基础增删改 mysql语法的对比的更多相关文章
- Hibernate基础增删改查语法
1.创建好Hibernate项目,创建好实体类和测试类,如果不会创建Hibernate项目的同学,点此处:http://www.cnblogs.com/zhaojinyan/p/9336174.htm ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- MongoDB下载安装与简单增删改查
Windows下MongoDB的安装和配置.启动和停止 下载地址:MongoDB的官方下载网址是:https://www.mongodb.org/downloads 安装步骤1. 点击下载的mongo ...
- MongoDB学习笔记,基础+增删改查+索引+聚合...
一 基础了解 对应关系 -> https://docs.mongodb.com/manual/reference/sql-comparison/ database -> database ...
- MongoDB 基础增删改查
增删改查 基础操作 use show dbs show collections db[当前所在数据库] 插入文档 db.collection.insert() db.collection.insert ...
- Mysql数据库基础增删改查常用语句命令
Mysql增删改查常用语句命令 一.增删改查语句总览 创建: create(创建数据库) 增:insert(插入表数据) 删:drop.delete(删除表.删除表数据) 改:update.alter ...
- MongoDB 3.0.6 安装 增删改查
下载 安装包MSI http://yunpan.cn/cmhHdTPkXZRM2 访问密码 9b6c 上边提供的是 MongoDB 3.0.6 64Bit 的安装包 安装 如果不想直接安装在C盘.. ...
- Node.js、express、mongodb 入门(基于easyui datagrid增删改查)
前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...
- MongoDB的ObjectId和基本操作增删改查(3)
ObjectId 基本操作增删改查 增: insert 介绍: mongodb存储的是文档,. 文档是json格式的对象. 语法: db.collectionName.insert(document) ...
随机推荐
- Qt列表等控件实现平滑滚动&deepin启动器存在的问题
Qt列表等控件实现平滑滚动 Qt自带的的列表控件是不能平滑滚动的,但如果滚动速度快的话很容易引起视线丢失,体验效果很差.本篇主要讲述如何在Qt中对列表控件加入平滑滚动.文中以QScrollArea控件 ...
- SpringCloud升级之路2020.0.x版-19.Eureka的服务端设计与配置
本系列代码地址:https://github.com/HashZhang/spring-cloud-scaffold/tree/master/spring-cloud-iiford Eureka Se ...
- .NET 元数据概述
元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件 (PE) 文件或存储在内存中的程序进行描述.将您的代码编译为 PE 文件时,便会将元数据插入到该文件的一部分中,而将代码转换为 Mi ...
- WPF 窗口 最前端 Topmost Owner
WPF 中,如果我们想把某个窗口一直置于最前端,那么可以设置Topmost=true; 但是,这样就会有另外一个问题,就时你这个窗口,会一直处于最顶层,即使你想切换到其他程序的时候. 比如,你自己写的 ...
- Qt中子窗口关闭之后,立即释放资源的方法
用Qt做界面的时候,很多时候都会遇见点击一个按钮弹出一个新的窗口的功能.我在刚开始做这个功能的时候,直接是点击一次按钮就new一个新的窗口,每次都只是将子窗口关闭而已,并没有去释放子窗口的资源,这样就 ...
- uwp 的个人名片
xml code ---------------------------------------------------------------------- <Page x:Class=&qu ...
- Linux的wget命令详解
[转载] Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器.如果我们使用虚拟主机, ...
- java 方法参数的执行顺序
java方法的参数的执行顺序是从左到右还是从右到左呢? 写出一下测试程序: 1 import java.util.*; 2 import java.io.*; 3 public class Test ...
- 微信小程序 div选中效果
._left{ position: relative; margin-top: 40rpx; width: 40%; height: 350rpx; border-radius: 12rpx; tex ...
- Mysql You can't specify target table 'newsalrecord' for update in FROM clause
这个问题是不能先select出同一表中的某些值,再update这个表(在同一语句中),即不能依据某字段值做判断再来更新某字段的值.解决办法就是建立个临时的表.