作家
登录

开源NoSQL数据库:ArangoDB入门指南

作者: 来源: 2017-11-08 10:48:20 阅读 我要评论

  • SORT user._key 
  •  
  • RETURN user  
  • 这依然不会返回预期的结不雅: James (10074) 会在 John (9883) 与 Katie (9915) 之前返回. 原因在于 _key 属性在 ArangoDB 中是一个字符串,而不是一个数字. 字符串的单个字符会被进行比较. 1 小于 9 ,因而结不雅是 “精确”的. 如不雅我们欲望应用数值作为 _key 属性的值,我们可以将字符串转换为数字并用其进行排序. 然而如许做有一些影响T. 我们最好排序其他内容. 年纪怎么样?以降序分列吗?

    1. FOR user IN users 
    2.  
    3. SORT user.age DESC 
    4.  
    5. RETURN user  

    用户的数据会以如下的次序返回: James (69), John (32), Katie (27)。与用DESC返回降序结不雅不合, ASC返回升序结不雅。 ASC是默认的选项,可以省略。

    我们可能须要根据用户的年纪返回一个子集。让我们返回30岁以上的用户的数据:

    这么做会按次序返回John and James。 Katie’s age的属性不知足三十岁以上的前提,她只有27岁,是以不再结不雅之中。我们可以修改她的年纪,使她从新包含在返回结不雅之中,应用如下的萌芽语句:

    1. UPDATE "9915" WITH { age: 40 } IN users 
    2.  
    3. RETURN NEW  

    UPDATE 许可部分编辑已存在的文档. 别的有 WordStr, 会移除所有属性 (除了 _key 与 _id 保持不变) 并且仅添加部分属性. 另一方面 UPDATE 调换指定的属性而保持其他属性不变.

    1.   { 
    2.     "_key""9883"
    3.     "_id""users/9883"
    4.     "_rev""9883"
    5.     "age": 32, 
    6.     "name""John Smith" 
    7.   } 
    8.  

    UPDATE 关键字后跟文档键 (或者带有 _key 属性的文档 / 对象) 来指定要修改的文档. 要更新的属性作为对象应用 WITH关键字写入. IN 表示在哪个集合中履行该操作, 类似 INTO (这里两个关键字可以交换). 如不雅我们应用 NEW 伪变量则会返回应用修改的全部文档:

    1.   { 
    2.     "_key""9915"
    3.     "_id""users/9915"
    4.     "_rev""12864"
    5.     "age": 40, 
    6.     "name""Katie Foster" 
    7.   }  

    相反如不雅我们应用 WordStr , name 属性会损掉. 应用 UPDATE, 属性会被保存 (如不雅我们有其他的属性,也同样实用该规矩).


      推荐阅读

      云领安防 让平安可以预见 华为带您领略一个让人安全感爆棚的平安世界

    除了展台展示之外,华为还举办了一场以"云领安防让安然可以预感"为主题的华为安然城市专题论坛,为专家学者以及安防行业用户搭建了一个交换平台,世人就人工智能、云数据中间、大年夜数据等新兴技>>>详细阅读


    本文标题:开源NoSQL数据库:ArangoDB入门指南

    地址:http://www.17bianji.com/lsqh/38605.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)