图数据库
纽约的自行车
这个作者很懒,什么都没留下…
展开
-
SPARQL Tutorial
目录前言1 JENA安装2 Data Format3 A First SPARQL Query4 Basic Patterns5 Filters6 Optional Information7 Alternatives in a Pattern8 Datasets前言 本文是SPARQL官方入门教程,通过示例介绍SPARQL的主要功能。SPARQL是一种查询语言,用于查询RDF结构的数据。虽然RDF数据具备推理性,但是SPARQL本身没有推理查询功能,它是面向数据的,只能查询数据中包含的信息。1 JE原创 2021-02-09 18:29:02 · 447 阅读 · 0 评论 -
AQL学习笔记(十二)-AQL运算符
5.1 比较运算符比较两个任意类型的操作数,返回布尔值。AQL支持以下比较运算符。Like用于比较左边的操作数是否和右边的模式匹配,模式由字符和通配符‘%,_’组成,‘_’表示匹配任意一个字符,‘%’表示匹配任意多个字符。如果要在模式中表示通配符本身的含义,需要用反斜线。下面第三个右边的模式中,‘_’在此不是通配符,而是其本身含义。=~和!~用于比较左边的字符串是否匹配右边的正...原创 2021-01-06 09:11:10 · 722 阅读 · 0 评论 -
AQL学习笔记(十一)-AQL基础——数据类型
AQL支持原始数据类型和复合数据类型。原始数据类型:null, bool, number, string (utf-8)复合数据类型:array, object/document(1)原始数据类型数值数据采用64位双精度类型,字符串需要用双引号或者单引号括起来。(2)复合数据类型数组类型用[ ]表示,里面每个元素可以是任意的合法表达式,元素可以是不同类型,数组可以嵌套。...原创 2021-01-06 09:10:46 · 572 阅读 · 0 评论 -
AQL学习笔记(十)-AQL基础——AQL语法
(1)query 类型一条AQL query语句要么返回结果,要么是数据修改操作。如果在相同的query中有多个数据修改操作,AQL会报错。AQL每次只执行一条query,不能将多个query写到一起,因此AQL中不需要分号将query隔开。(2)空格可以使用空格来提高程序的阅读性,tokens必须用空格分开。字符串或名称中的空格必须用引号括起来。(3)注释单行注释使用双斜线 ...原创 2021-01-06 09:10:26 · 1548 阅读 · 0 评论 -
AQL学习笔记(九)-根据坐标查询
(本小结用到的数据在ArangoDB学习笔记(八)-创建坐标collection中已创建)给定一个坐标,可以查询到离他最近的n个地点。使用for循环遍历Locations集合,用near函数查找最近的n个地点。Near函数中Locations表示遍历的集合,53.35和-6.26表示给定的坐标,3表示寻找3个最近的地点。结果如下,也可以直接return loc,结果如下:...原创 2021-01-06 09:10:03 · 253 阅读 · 0 评论 -
AQL学习笔记(八)-创建坐标collection
坐标包括经度和维度,可以将两者存储为一个属性,也可以分开为两个属性存储。ArangoDB允许坐标查询。首先创建数据,数据来自各城市的坐标数据。先创建集合Collection,命名为Locations,然后插入数据。然后创建坐标索引,按照如下步骤:首先进入Locations集合中,单击Indexes,然后单击右下角的加号。选择Geo Index,在Fields...原创 2021-01-06 09:09:44 · 217 阅读 · 0 评论 -
AQL学习笔记(七)--遍历图
(本小结用到的数据在ArangoDB学习笔记(二)--文档的创建,ArangoDB学习笔记(五)--连接文档中已创建)创建了图,就可以根据关系查询。知道某个child的id,根据图关系就可以找到其parent。这个for循环没有遍历任何集合或数组,它遍历了整个图,寻找与‘Characters/1906’连接的节点,1..1表示最小和最大遍历深度都为1,outbound指定搜寻方向,表示...原创 2021-01-06 09:09:23 · 570 阅读 · 0 评论 -
AQL学习笔记(六)--创建边文档
(本小结用到的数据在ArangoDB学习笔记(二)--文档的创建中已创建)父子关系可以用图来表示,在ArangoDB中,如果两个文档具有父子关系,则可以用边文档来连接他们。边文档存储在边集合中,边文档有两个属性:_from和_to。数据库中的人物有如下父子关系,图表示如下,接下来我们创建一个边文档。首先创建ChildOf集合,然后在集合中创建边文档,注意type中选择Edg...原创 2021-01-06 09:09:04 · 404 阅读 · 2 评论 -
AQL学习笔记(五)--连接文档
(本小结用到的数据在ArangoDB学习笔记(二)--文档的创建中已创建)Character集合中每个文档都有一个traits字段,其值是字符列表,这样使得文档非常简洁,但是读者无法理解每个字符所代表的含义。如果我们直接表示traits,文档则会很庞大难以维护。下面两个模型形象的解释了上面两种情况,模型1表示直接将traits记录在文档中,模型2表示将traits和文档分开,在...原创 2021-01-06 09:08:40 · 325 阅读 · 0 评论 -
AQL学习笔记(四)--查找文档
(本小结用到的数据在ArangoDB学习笔记(二)--文档的创建中已创建)在AQL中FILTER关键字可以实现按条件查找文档。2.2.1 相等条件查找Name可以是其他字段,返回结果如下:2.2.2 范围条件查找返回Character中所有年龄大于13的人名。结果如下:还可以返回多个字段,2.2.3 多条件查找可以同时使用多个限制条件查找文档,...原创 2021-01-06 09:08:06 · 339 阅读 · 0 评论 -
AQL学习笔记(三)--文档的读取、更新和删除
(本小结用到的数据在ArangoDB学习笔记(二)--文档的创建中已创建)2.1.2 读文档可以使用for循环检索文档,返回Characters中每个documents。如下所示,可以看到每个document中系统都自动添加了’_key’, ’_id’, ‘_rev’三个字段。2.1.3 更新文档更新documents中某个key的value。这里 ’1370’ 是do...原创 2021-01-06 09:07:15 · 575 阅读 · 0 评论 -
AQL学习笔记(二)--文档的创建
文档操作有创建、读、更新和删除。本节以《Game of Thrones》第一季中部分人物信息作为文档数据来学习文档的各种操作。部分数据如下所示,人物traits由18个字母索引表示,部分表示如下,有英文和德文两种说明。影视中各城市位置如下:2.1.1 创建文档打开Web Interface(操作方式见https://blog.csdn.net/qq_27668313/a...原创 2021-01-06 09:06:33 · 354 阅读 · 0 评论 -
AQL学习笔记(十二)-数组高级操作
10.1 数组表达式使用[*]操作符可以对数组内所有元素迭代访问,返回的结果仍然是一个数组。首先创建一个users document,然后写入数据:使用[*]操作符可以直接访问属性friends,返回结果如下:10.2 数组拼接为了拼接嵌套数组的元素,AQL提供[**]操作符,星号数量取决于嵌套数量,[**]可以将嵌套一次的数组内容拼接,[**]可以将嵌套两次的数组...原创 2021-01-06 09:03:11 · 273 阅读 · 0 评论