一、mongoDB介绍和使用

  1、分布式文件储存数据库,使用C++开发的,可以存储任意数据(文件),允许在服务器端执行脚本,使用JSON形式储存数据{key:value}

  2、支持的编程语言有:PHP 、ruby、python、C++、C#、Java等等

  3、使用db表示当前数据库

  4、安装:apt install mongodb / 源码安装

  5、运行:mongo     启用端口 27017

  6、管理工具:NoSQL Manager for MongoDB 、Navicat

  7、https://www.cnblogs.com/phpper/p/9196870.html     windows 系统上PHP7安装mongodb 扩展

二、MongoDB中的一些概念:

  database   数据库

  collection    数据集合(表)

  document     文档(行)

  field        域(字段)

  index   索引

  不支持 表连接

  数据库 ----> 集合----> 文档----> 域

  MongoDB 中可以有多个数据库,不同的数据库可以放置在不同的文件中

  系统数据库:

    admin:相当于root数据库,该数据库是一个高权限的数据库,在该数据库中可以执行全部的命令

    local:存储本地服务器的集合

    config:与数据库的分片有关

三、常用命令:

  show dbs   查看所有数据库

  use admin   切换数据库

  db    当前数据库

  use 数据库名    创建数据库

  db.dropDatabase()     删除当前使用的数据库

  db.createCollection(‘集合名’)    创建集合

  db.集合名.drop()   删除集合   返回值是布尔

  show collections   查看集合

  db.集合名.insert({key1:value1,key2:value2})    创建文档 ,k1和k2是域,v1和v2是域对应的值,域可以不加单双引号

  db.users.find().pretty()   (可读性高)查看users集合下的所有文档

  db.集合名.remove({})   删除文档

  db.集合名.update({被更新的对象},{$set:{更新的内容}})    更新文档,默认只更新第一条发现的数据

    全部更新:db.集合名.update({被更新的对象},{$set:{更新的内容}},{muti:ture})

四、查询数据-条件

  $lt => <      $lte =>  <=       $gt =>  >     $gte => >=     $ne =>  !=     $regex  正则    :  =>  =

  等于:{k:v}

  小于:{k:{$lt:v}}     {id:{$lt:20}} :id小于20的

  大于:{k:{$gt:v}}

  小于等于:{k:{$lte:v}}

  大于等于:{k:{$gte:v}}

  不等于:{k:{$ne:v}}

  多条件使用,隔开  db.集合.find({},{})   多条件是与的关系

  或的关系 db.集合名.find({$or:[{},{}]})

  限制查询的结果:db.集合名.find({k1:v1,k2:v2}).limit(数字)

  跳过前几个来显示查询:db.集合名.find({k1:v1,k2:v2}).skip(1)   跳过第一列

  排序:db.集合名.find({k1:v1,k2:v2}).sort({k:1})    升序

     db.集合名.find({k1:v1,k2:v2}).sort({k:-1})    降序

五、数据类型

  布尔

  数字

  字符

  浮点数

  数组

  内嵌文档

  null

  

NOSQL基础的更多相关文章

  1. NoSQL基础学习

    NoSQL基础学习 最近学习的第一个Nosql就是Mongodb,为了了解Nosql的基本知识,特地总结,主要是学习Nosql的理论 一.Introduction(介绍) 它是“ Not Only S ...

  2. NOSQL基础概念

    NoSql是一个很老的概念了,但对自己来说,仍然是一个短板,果断补上. 首先通过几个简单的例子来了解NOSQL在国内的情况(2013年左右的数据,有些过时),比如新浪微博,其就有200多台物理机运行着 ...

  3. NoSql基础知识

    一.为什么要有NoSql 关系型数据库在三个方面存在不足,或者说,比不上NoSQL: 1.大量数据的写入处理 这里说的关系型数据库不擅长大量数据写入,并不是说关系型数据库在进行大批量数据插入的时候,比 ...

  4. 具体解释NoSQL数据库使用实例

    一.NoSQL基础知识 1.关于NoSQL 在"NoSQL"一词.实际上是一个叫Racker的同事创造的,当约翰埃文斯埃里克要组织一次活动来讨论开源的分布式数据库. 这个名称和概念 ...

  5. 关于Mongodb的全面总结

    MongoDB的内部构造<MongoDB The Definitive Guide> MongoDB的官方文档基本是how to do的介绍,而关于how it worked却少之又少,本 ...

  6. Redis学习笔记(1)

    一.NoSQL基础知识 1. NoSQL概念 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库 ...

  7. NOSQL学习笔记系列之MongoDB 一 基础

    主题:MongoDB 学习资料参考网址: 1.http://www.w3cschool.cc/mongodb/mongodb-tutorial.html 2.http://www.icoolxue.c ...

  8. NoSQL之基础篇

    NoSQL(NoSQL = Not Only SQL ),泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2. ...

  9. [转载]NoSQL数据库的基础知识

    关系型数据库和NoSQL数据库 什么是NoSQL 大家有没有听说过“NoSQL”呢?近年,这个词极受关注.看到“NoSQL”这个词,大家可能会误以为是“No!SQL”的缩写,并深感愤怒:“SQL怎么会 ...

随机推荐

  1. windows docker xshell 默认登录密码

    boot2docker用户和密码 用户 密码 进入方式 docker tcuser ssh root   command:sudo -i (docker用户下执行)

  2. 《闲扯Redis七》Redis字典结构的底层实现

    一.前言 上节<闲扯Redis六>Redis五种数据类型之Hash型 中说到 Hash(哈希对象)的底层实现有: 1.ziplist 编码的哈希对象使用压缩列表作为底层实现 2.hasht ...

  3. 使用ATOMac进行Mac自动化测试

    ATOMac简介 atomac是一个支持在mac上做自动化的python库,GitHub地址如下: https://github.com/pyatom/pyatom 安装 # Python2 sudo ...

  4. 仓库储存,存在添加减少,不存在插入ON DUPLICATE KEY UPDATE

    原文链接:https://blog.csdn.net/qq_42269354/article/details/100589640 首先声明:ON DUPLICATE KEY UPDATE 为MySQL ...

  5. Lua学习入门(基本数据类型)

    数据类型 Lua 中有 8 个基本类型分别为:nil.boolean.number.string.userdata.function.thread 和 table. 数据类型 描述 nil 这个最简单 ...

  6. Linux中配置端口转发(反向代理)

    在conf.d目录下建一个文件, 以conf为结尾(如果没有conf.d目录,就自己新建一个) server { listen 80; server_name 127.0.0.1; #这个IP是你服务 ...

  7. Day05_企业权限管理(SSM整合)

    学于黑马程序员和传智播客联合做的教学项目 感谢 黑马程序员官网 传智播客官网 个人根据教程的每天的工作进度的代码和资料 密码:cti5 b站在线视频 微信搜索"艺术行者",关注并回 ...

  8. Azure AD(五)使用多租户应用程序模式让任何 Azure Active Directory 用户登录

    一,引言 距离上次分享关于 “Azure AD" 的知识过去差不多2个多月了, 今天最近刚好也是学习,分享一下关于Azure AD 使用多租户应用程序模式让任何 Azure Active D ...

  9. 社交网站的数据挖掘与分析pdf版本|网盘下载地址附提取码|

    点击此处进入网盘下载地址 提取码:btqx 作者介绍: 马修·罗塞尔(MatthewA.Russell),DigitalReasoningSystems公司的技术副总裁和Zaffra公司的负责人,是热 ...

  10. 牛客练习赛60 D 斩杀线计算大师

    LINK:斩杀线计算大师 给出a,b,c三个值 求出 ax+by+cz=k的x,y,z的正整数解 保证一定有解. 考虑两个数的时候 ax+by=k 扩展欧几里得可以解决. 三个数的时候 一个暴力的想法 ...