博客
关于我
Neo4j图数据库
阅读量:119 次
发布时间:2019-02-26

本文共 2052 字,大约阅读时间需要 6 分钟。

1.、数据导入

可以使用
LOAD CSV WITH HEADERS FROM “file:///Inventory.csv” AS row
MERGE (s:Store {name: row.store})
WITH *
MATCH (c:City {name: row.store})
MERGE (s)-[:IN_CITY]-©
WITH *
MATCH (p:Product {sku: row.sku})
MERGE §-[r:INVENTORY]->(s)
SET r.count = toInt(row.number)
RETURN *;

想用

call apoc.load.json("///reviews.json") YIELD value AS row
MATCH (c:Customer {customerid: toString(row.customerid)})
MATCH (p:Product {sku: toString(row.sku)})
MERGE ©-[r:REVIEWED]->§
SET r.rating = round(toFloat(row.review))
RETURN *;
必须先开启 apoc.import.file.enabled=true

社区发现

解析:
“CALL algo.unionFind(label:String, relationship:String, {weightProperty:‘weight’, threshold:0.42, defaultValue:1.0, write: true, partitionProperty:‘partition’}) YIELD nodes, setCount, loadMillis, computeMillis, writeMillis”
输入的为
label 节点类别;relationship 关系类别
可选输入
weightProperty 权重属性
threshold 边界值
defaultValue 默认值,当属性为空时的填充
返回
nodes 节点

CALL algo.unionFind.stream(‘User’, ‘FRIEND’, {weightProperty:‘weight’,

defaultValue:0.0, threshold:1.0, concurrency: 1})
YIELD nodeId,setId
RETURN algo.getNodeById(nodeId).id AS user, setId

threshold 门槛 边界

concurrency 并发性

删除全部数据

match (n) detach delete n

查看数据结构

call apoc.meta.graph == call db.schema()

with语句

使用with语句进行聚合过滤查询,示例:
MATCH (n {name:“John”})-[:friend]-(friend)
WITH n, count(friend) as friendsCount
WHERE friendsCount>3
RETURN n, friendsCount

使用with语句进行聚合更新,示例:

MATCH (n {name:‘John’})-[:friend]-(friend)
WITH n,count(friend) as friendsCount
SET n.friendsCount = friendsCount
RETURN n.friendsCount

//collect()将所有满足值聚集在一个列表中

match (p:Person)-[:ACTED_IN]->(m:Movie)
with p, count(*) as appearances, collect(m.title) as movies
where appearances > 1
return , appearances, movies

optinal match 类似于match ,不同之处在于 如果没有匹配到optinal match将用null作为未匹配到不分的值.

可以理解为mysql中的inner join 如果没有就用null.

查看数据库的图算法

CALL dbms.procedures() YIELD name, signature, description
WHERE name starts with “algo”
RETURN name, signature, description

查看APOC

CALL dbms.procedures() YIELD name, signature, description
WHERE name starts with “apoc”
RETURN name, signature, description

转载地址:http://wzru.baihongyu.com/

你可能感兴趣的文章
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>