zoukankan      html  css  js  c++  java
  • mongodb入门教程二


    title: mongodb入门教程二
    date: 2016-04-07 10:33:02
    tags:

    上一篇文章说了mongodb最基本的东西,这边博文就在深入一点,说一下mongo的一些高级功能

    mongodb 投影

    投影听上去挺吓人的,很多人和我一样看了这个词就不想往下继续看了,其实也没有那么唬人,接着往下看什么是投影

    投影:mongodb 投影意思是只选择必要的数据而不是选择一个文件的数据的整个。如果一个文档有5个字段,需要显示只有3个,然后选择其中只有3个字段。

    语法如下

    db.COLLECTION_NAME.find({},{KEY:1})
    

    第一个大括号不用管,第二个括号里面写的就是你是否要显示那些数据,_id字段是默认显示的,如果不想让它显示出来就把它的值指为0,其它字段指为1才能显示

    如下

     db.lala.find({},{"name":1,_id:0})
    
    key value
    { "name" : "毛润之" }
    { "name" : "蒋介石" }
    { "name" : "张学良" }

    就这么多了

    limit()方法

    要限制 MongoDB 中的记录,需要使用 limit() 方法。 limit() 方法接受一个数字型的参数,这是要显示的文档数。

    基本语法

    db.COLLECTION_NAME.find().limit(NUMBER)
    

    这个很好理解,在limit()括号中填上要输出的条数即可,如果什么都不填,就会显示所有条目

    MongoDB Skip() 方法

    除了limit() 方法,还有一个方法skip() 也接受数字类型的参数,并使用跳过的文档数。

    基本语法

    db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)
    

    skip()方法默认参数是0

    skip() 也可以和limit()一起使用

    从这个例子可以看出来,skip()不管前面有没有查到第一条,都会跳过第一条,也就是它总是会从集合的第一条开始算,这里需要注意一下。

    soft()方法

    语法如下

    db.COLLECTION_NAME.find().sort({KEY:1})
    

    默认是升序,这里注意一下

    MongoDB 索引

    索引支持的解析度的查询效率。如果没有索引,MongoDB 必须扫描每一个文档的集合,要选择那些文档相匹配的查询语句。这种扫描的效率非常低,会要求 mongod 做大数据量的处理。

    索引是一种特殊的数据结构,存储设置在一个易于遍历形式的数据的一小部分。索引存储一个特定的字段或一组字段的值,在索引中指定的值的字段排列的。

    ensureIndex() 方法

    要创建一个索引,需要使用MongoDB 的ensureIndex()方法。

    基本语法

    db.COLLECTION_NAME.ensureIndex({KEY:1})
    

    也可以通过多个字段创建索引

    ensureIndex() 方法也可以接受的选项列表(可选),其下面给出的列表:

    参数 类型 描述
    background Boolean 在后台建立索引,以便建立索引并不能阻止其他数据库活动。指定true建立在后台。默认值是 false.
    unique Boolean 创建唯一索引,以便收集不会接受插入索引键或键匹配现有的值存储在索引文档。指定创建唯一索引。默认值是 false.
    name string 索引的名称。如果未指定,MongoDB中都生成一个索引名索引字段的名称和排序顺序串联.
    dropDups Boolean 创建一个唯一索引的字段,可能有重复。 MongoDB的索引只有第一次出现的一个键,从集合中删除的所有文件包含该键的后续出现的。指定创建唯一索引。默认值是 false.
    sparse Boolean 如果为true,指数只引用文档指定的字段。这些索引使用更少的空间,但在某些情况下,特别是各种不同的表现。默认值是 false.
    expireAfterSeconds integer 指定一个值,以秒为TTL控制多久MongoDB的文档保留在此集合.
    v index version 索引版本号。默认的索引版本取决于mongodb 运行的版本在创建索引时.
    weights document 权重是从1到99999范围内的数,表示该字段的意义,相对于其他的索引字段分数.
    default_language string 对于文本索引时,决定停止词和词干分析器和标记生成规则列表的语言。默认值是 english.
    language_override string 对于文本索引时,指定的名称在文档中包含覆盖默认的语言,语言字段中。默认值是语言。

    mongodb聚合

    聚合操作过程中的数据记录和计算结果返回。聚合操作分组值从多个文档,并可以执行各种操作,分组数据返回单个结果。在SQL COUNT(*)和group by 相当于MongoDB的聚集。

  • 相关阅读:
    软件工程——结构化方法
    静态变量的坑
    OpenCV中对Mat的遍历访问与赋值
    SQL SERVER 自定义函数 整数转成指定长度的16进制 转换成指定长度的16进制 不足补0
    Ext.Net中的Task控件的使用
    字符集越界 正则表达式匹配车牌
    [TOEIC] 2013年12月25日托业考试总结
    WebKit 内容整理
    [C#/.NET]how to implement web application localization in .net 4.0
    C# 代码为什么比 C++代码 编译速度快?
  • 原文地址:https://www.cnblogs.com/colder219/p/5492552.html
Copyright © 2011-2022 走看看