Neo4j图数据库

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 p.name, 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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值