arangodb 实战笔记
arangodb 实用笔记
auth:wangjing
date:2021-03-24
INSERT
insert document
insert {"name":"张三",
"age":"27",
"birthday":"1994-10-01",
"alive":"ture",
} INTO new_doc
insert document batch
let data =[
{"name":"张三","age":"27","birthday":"1994-10-01","alive":"ture"},
{"name":"张三","age":"27","birthday":"1994-10-01","alive":"ture"},
{"name":"张三","age":"27","birthday":"1994-10-01","alive":"ture"},
{"name":"张三","age":"27","birthday":"1994-10-01","alive":"ture"},
{"name":"张三","age":"27","birthday":"1994-10-01","alive":"ture"}
]
for d in data
insert d into new_doc
Insert edge
INSERT {_from:"new_doc/50072560",_to:"new_doc/50072501"} into new_edge
return "ok"
Insert with edge
INSERT {_from:"new_doc/50072560",_to:"new_doc/50072501",edge:"朋友"} into new_edge
return "ok"
REMOVE
根据_key值删除
REMOVE "19579" IN info2021
我们还可以循环删除文档
对于INSERT,UPDATE和REPLACE来说也是如此
FOR info IN info2021 FILTER info.age >= 30 REMOVE info IN info2021
UPDATE
将_key为19579的记录的age字段从25更新到60
UPDATE "19579" WITH { age: 60 } IN info2021
查询
return documents
for d in new_doc return d
return document record A
//单条记录
return document("new_doc/50072560")
return document record B
RETURN DOCUMENT( ["info2021/19579", "info2021/19768", "info2021/20234"] )
return document record C
//单条记录
for d in new_doc
return {"主键":d._id,"姓名":d.birthday}
return document record D
for c in new_doc
FILTER c.name == '张三'
return c
return edges
for d in new_edge return d
return edges 4 bob
for e in knows
filter e._from == "persons/bob" OR e._to == "persons/bob"
return e
return edges 4 edge
for d in new_edge
filter d.edge == "朋友"
return d
查询对象与对象关系
for c in new_doc
FILTER c.name == '张三'
//一级关系
for v in 1..1
OUTBOUND c new_edge
return c
查询直接关系有问题
for r in new_edge
FILTER r._from==s._id
for e in new_doc
FILTER r._to == e._id
return {s:s,r:r,e:e}
高级分析
for s in persons
for r in knows
FILTER r._from==s._id
for e in persons
FILTER r._to == e._id
//return {s:s,r:r,e:e}
return {"_id": r._id,"_from": s._id,"_to": e._id,"s_s":s,"e_e":e
}
some code
for c in new_doc FILTER c.name == '张三'
//直接关系
for v in 1..1 OUTBOUND c new_edge
return c
//查对象与对象关系
for s in new_doc FILTER s.name == '张三'
//直接关系
for r in new_edgeFILTER r._from==s._idfor e in new_docFILTER r._to == e._id
return {s:s,r:r,e:e}
路径匹配
鸟A → 鸟B → 鸟C
鸟A与鸟C为2级关系
arangodb 实战笔记相关推荐
- [转载]秀脱linux实战笔记linux-kernel-3.0.3实战篇
+++++++++++++++++++++++++++++++++++++++++++++++++++++++ 秀脱linux实战笔记linux-kernel-3.0.3实战片篇: QQ: 6 ...
- 机器学习实战笔记(Python实现)-04-Logistic回归
转自:机器学习实战笔记(Python实现)-04-Logistic回归 转自:简单多元线性回归(梯度下降算法与矩阵法) 转自:人工神经网络(从原理到代码) Step 01 感知器 梯度下降
- Unity3D项目实战笔记(10):Unity3D编译IPA的PostEvents–节约时间利器
最近,SDK支付等接入差不多了,就从Unity3D生成IPA (企业版License), 然,需要手动执行的PostEvents竟然多大10项+, 这些我默默的承受了1周时间,每次约浪费20分钟-额外 ...
- 云炬Qtpy5开发与实战笔记 2PyCharm添加QTDesinger扩展并创建第一个.ui文件
1.配置使用QTDesigner扩展工具 在pycharm的项目配置中配置扩展工具,将QTDesigner加入其中: 2.在pycharm中打开QTDesigner 或者: 此时,我们就可以使用QTD ...
- 云炬Qtpy5开发与实战笔记 1开发第一个桌面应用Hello World
云炬Qtpy5开发与实战笔记 0搭建开发环境(傻瓜式安装) 1.打开 Pycharm,选择 Create New Project,创建一个新项目 2.选择Pure Python表示创建一个纯Pytho ...
- mysql颠覆实战笔记(五)--商品系统设计(二):定时更新商品总点击量
继续回到沈老师的MYSQL颠覆实战,首先回顾下上一节课的内容,请大家会看下上节课写的存储过程. 打开prod_clicklog表, 我们只要把日期(不含时分秒)的部分存在数据库中, 如果同一日期有相同 ...
- kaggle实战笔记_1.数据处理
kaggle实战笔记_1.数据处理 数据处理的重要性比模型更重要 如果正负样本是1:100的话,直接拿去做建模,问题是非常大的,如果其评判标准为accuracy的话,如果把任何一个样本都判定为负样本的 ...
- 设置gradle远程仓库_有幸得到Alibaba内部Gradle实战笔记,趁双节来狂补
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的k ...
- tshark/wireshark/tcpdump实战笔记(更新中...)
注意Wireshark表示意义: Source: 发送方IP Destination: 接收方IP Protoco: 协议 Length: 这里显示的物理层(Frame)数据长度,Frame层长度最长 ...
最新文章
- 强化学习(七) - 函数近似方法 - 随机梯度下降, 半梯度下降,及瓦片编码(Tile Coding)实例
- Webservice开发之xsd中开发list请求参数的接口
- 前端学习(1867)vue之电商管理系统电商系统之登录退出实现表单的重置
- VB案例:素数判断与合数分解
- WinCE 控制面板和驱动通信
- Python之np.where的使用
- 【Android】16.5 Android内置的系统服务
- 山东科技职业学院单招计算机,山东科技职业学院单招
- Zookeeper C API 指南三(回调函数)
- 数据同步一致性_微服务架构:利用事件驱动实现最终一致性
- nodejs脚本后台运行
- 电脑右键新建没有文本文档解决办法
- 《居里夫人自传》的读后感作文1700字
- C语言pow函数的精度问题
- 爱河许云上计算机乐谱,爱河简谱(歌词)-神马乐团演唱-桃李醉春风记谱
- 硬件模拟大师_用机器人做咖啡,“智咖大师”这样升级新零售
- D-OJ刷题日记:一元多项式的运算 题目编号:463
- Uva 1151 Buy or Build 二进制枚举+最小生成树
- IDEA插件系列(89):Copy/Paste Stack插件——复制/粘贴工具栈
- Python第3章 流程控制