zoukankan      html  css  js  c++  java
  • Mongodb常用知识点

    结构:
    database 数据库

    collection 数据库表/集合

    document 数据记录行/文档

    field 数据字段/域

    index 索引

    primary key 主键,mongodb自动将_id字段设置为主键

    常用指令:

    db.help():查看库方法

    db.mycoll.help():查看集合方法

    show dbs :查看所以库

    use 库名 切换库,库不存在就自动创建它

    db.getName() :查看当前操作库的名称

    添加数据:

    mongodb中存储数据的格式是文档格式,以bson格式的文档形式

    添加数据:
    db.集合.insert();

    #例
    db.集合.insert({name:'xxx',sex:'nv',age:18})

    多维数据添加:

    #例
    db.集合.insert({name:'xxx',age:20,area:{city:'beijing'}})

    查询数据:

    db.集合名称.find(查询条件)  取出符合条件的所有

    db.集合名称.findOne(查询条件)  取出符合条件的第一条,并且以格式化形式返回

    1.条件限制查询

    #例
    db.集合.find({name:'xxx'})
    
    db.集合.findOne({name:'xxx'});

    2.范围条件查询:

    在mysql中常用 < > <= >= 进行范围内的查找,在mongodb中用

    $lt $gt $lte $gte  进行限制

    #例
    db.集合.find({age:{'$lt':20}})

    3.多个条件查询:

    类似与and

    #例
    db.集合.find({age:{'$lt':20},monry:{'$lte':20000}})

    4.多维字段查询:

    db.集合.find({'xxx.xx':xxx});

    #例
    db.集合.find({'area.city':'beijing'});

    5.数组条件查询:

    #例 满足查询条件所有的才可显示
    db.集合.find({xxx:{'$all':['xxx','xxx']}})

    6.限制查询字段:

    在开发过程中,不需要查询并显示太多的字段,可以选择设定显示

    db.集合.find({查询条件},{筛选条件});

    #例
    db.集合.find({xxx:{'$all':['xxx','xxx']}},{xxx:1,xxx:0})

    7.$or查询:

    满足一个条件就可以显示

    #例
    db.集合.find({'$or':[{price:{'$gt':500}},{num:{'$gte':100}}]});

    8.count语法:

    db.集合.count() 

    限制条件:

    #例
    db.集合.find({num:{'$gt':50}}).count();
    #或
    db.集合.count({num:{'$gt':50}});

    9.limit语法 skip语法:

    类似于mysql中的limit(skip,length)语法

    limit() 取几个

    skip() 跳过几个

    #例
    db.集合.find().limit(1);
    
    db.集合.find().skip(1).limit(1)

    修改数据:

    语法:db.集合.update({查询条件},{修改条件})

    db.集合.updateOne({查询条件},{修改条件})

    #例
    db.集合.update({name:'xxx'},{'$set':{price:5554}})
    
    db.集合.updateOne({name:'xxx'},{'$set':{price:5554}})

    如果没有$set关键字语法,把设置的字段进行修改,没有设置的就会被删除掉

    删除数据:

    db.集合.remove({查询条件})

    db.集合.deleteOne({查询条件})

    db.集合.deleteMany({查询条件})

    删除字段:

    可以删除某个字段的操作,使用的是update语法的$unset

    #例 值随便给一个
    db.集合.update({name:'xxxx'},{'$unset':{xxx:0}})

    mongodb账号权限:

    切换到admin库,进行用户创建

    db.createUser({user:'用户名',pwd:密码",roles:['root']})

    db.shutdownServer():关闭mongod服务

    PHP中操作mongodb:

    linux下在php.ini中开启extension=mongo.so加载扩展,需要提前编译好mongo扩展

    win下将php_mongo.dll扩展放在ext中,在php.ini里开启extension=php_mongo.dll扩展

     需要示例化mongoclient 扩展类,构造方法参数传“mongodb://ip”,

    #例
    #连接mongodb $mongo
    =new MongoClient('mongodb://192.168.0.0')

    权限的账号:

    #例
    #端口号 设置的27017
    $mongo=new MongoClient('mongodb://账号名:密码@192.168.0.0:2017/admin')

    加载数据库:

    #例
    $database=$mongo->要加载的库名

    选择集合(也就是数据表)

    #例
    #选择集合
    $collection = $database->集合;

    查询数据:

    #例
    $collection -> find(array('name'=>'xioming'),array('_id'=>0));

    修改数据:

    #例 前面是查询条件,后面是修改数据
    $collection->update(array('name'=>'xiaoming'),array('$set'=>array('age'=>19)))

    删除数据:

    #例
    $collection->remove(array('name'=>'xiaoming'));

    未完待续~~~~~~~~

  • 相关阅读:
    Laravel 项目中编写第一个 Vue 组件
    laravel 中CSS 预编译语言 Sass 快速入门教程
    Laravel 项目中使用 Bootstrap 框架
    web框架之MVC/MTV
    jQuery补充之jQuery扩展/form表单提交/滚动菜单
    jQuery前端插件以及图片延迟加载
    JavaScript正则表达式补充
    jQuery语法介绍
    DOM
    JavaScript
  • 原文地址:https://www.cnblogs.com/bjphp/p/8531821.html
Copyright © 2011-2022 走看看