# 常用函数

UPPER

LOWER

SUBSTRING

REPLACE

COUNT

MAX

MIN

SUM

AVG

```取字符串
match(n:hero) return substring(n.name, 0,2), n.name

match(n:hero) return count(n)
Neo4j无 group by
Match (n:Person) return count(*)
Match (n:Person) return avg(n.age)   只包含age不为空的node```

# shortestPath 查询最短路径

```match p = shortestpath((:hero{name:"孙尚香"})-[*..3]-(:hero{name:"武则天"})) return p
match p = allshortpath((:hero{name:"孙尚香"})-[*..3]-(:hero{name:"武则天"})) return p```

image.png

# 正则

```(n)-->(m)
Relationship from n to m.
(n)-[*1..5]->(m)
Variable length path of between 1 and 5 relationships
from n to m.```

# collect

```MATCH (s:Supplier)-->(:Product)-->(c:Category)
RETURN s.companyName as Company, collect(distinct c.categoryName) as Categories```

collect(distinct c.categoryName) 单独对c.categoryName去重

# 数据导入

```LOAD CSV WITH HEADERS FROM "http://data.neo4j.com/northwind/products.csv" AS row
CREATE (n:Product)
SET n = row,
n.unitPrice = toFloat(row.unitPrice),
n.unitsInStock = toInteger(row.unitsInStock), n.unitsOnOrder = toInteger(row.unitsOnOrder),
n.reorderLevel = toInteger(row.reorderLevel), n.discontinued = (row.discontinued <> "0")```

2.import 将csv文件放到import目录中

```// 将hudong_pedia.csv 导入
CREATE (p:HudongItem{title:line.title,image:line.image,detail:line.detail,url:line.url,openTypeList:line.openTypeList,baseInfoKeyList:line.baseInfoKeyList,baseInfoValueList:line.baseInfoValueList})  ```

3.用python接口导入文件

```import json
from py2neo import Node ,Graph,Relationship

g=Graph("http://localhost:7474",
g.run("MATCH (n) OPTIONAL MATCH (n)-[r]-()DELETE n,r")
with open("属性.json","r",encoding='utf-8')as f:
# print(da[1])
for i in range(len(da)):
data = eval(da[i])
shuxing = [i for i in data.keys()]
# print(shuxing)
sx_zhi= [i for i in data.values()]
# print(sx_zhi[-1])
temp = Node("shiti",name=str(shuxing[-1]),property=str(sx_zhi[-1]))#,des=str([sx_zhi[-1]])
# g.create(temp)
with open("关系.txt",'r',encoding='utf-8')as f:
for i in da:
k = i.strip("\n").split(" ")
print(k[0])
rel = Relationship(g.find_one(label="shiti",property_key='name',property_value=str(k[0])),str(k[1])
,g.find_one(label="shiti",property_key='name',property_value=str(k[2])))```

93 篇文章34 人订阅

0 条评论

## 相关文章

38510

### MySQL数据库中的5种数据类型简介

MySQL数据库中的5种数据类型是：字符型，文本型，数值型，逻辑型与日期型，以下就是文章的详细内容介绍，希望在你今后的学习中会有所帮助。

832

3034

### HQL语句大全

Hibernate配备了一种非常强大的查询语言，这种语言看上去很像SQL。但是不要被语法结构 上的相似所迷惑，HQL是非常有意识的被设计为完全面向对象的查询，它...

1465

1420

2693

6862

913

### Django——model基础

ORM 映射关系： 　　　 表名 <－－－－－－－> 类名 字段 <－－－－－－－> 属性 　　　　表记录 <－－－－－－－>类实例对象...

18310

### OLEDB 静态绑定和数据转化接口

OLEDB 提供了静态绑定和动态绑定两种方式，相比动态绑定来说，静态绑定在使用上更加简单，而在灵活性上不如动态绑定，动态绑定在前面已经介绍过了，本文主要介绍OL...

1081