Cypher Sql

Cypher Sql

Cypher 就像 SQL 是一种声明性的文本查询语言,但用于图Graph。它由子句、关键字和表达式(如谓词和函数)组成,其中许多是熟悉的(如WHERE、ORDER BY、SKIP LIMIT、AND、p.unitPrice > 10)。与 SQL 不同,Cypher 是关于表达图模式的。我们添加了一个特殊子句MATCH来匹配您数据中的这些模式。

1 创建节点

CREATE (n:devices {title: '设备体系',name: '设备体系',type: '设备',color:'#ff4500',r:35})

如果需要替换里面的属性值 可以这么写

CREATE (n:devices {deviceId: '%s',deviceCode: '%s',prodId: '%s',deviceName: '%s',name: '%s',type: '%s',color:'#0997F7',r:26})

如果有多个节点 也可以这么写

CREATE (m1:profession {name:'计算机专业'})
CREATE (m2:profession {name:'软件工程'})
CREATE (m3:profession {name:'大数据'})
CREATE (m4:profession {name:'信管'})
RETURN m1,m2,m3,m4

2 不重复创建节点

MERGE (n:devices {title: '设备体系',name: '设备体系',type: '设备',color:'#ff4500',r:35})

3 创建两个结点之间的关系

CREATE (n:devices {title: '设备体系',name: '设备体系',type: '设备',color:'#ff4500',r:35})
CREATE (n:devices {prodId: '%s',prodCode: '%s',prodName: '%s',name: '%s',type: '%s',color:'#22DDDD',r:32})
MATCH (a:devices),(b:devices) WHERE a.name = '设备体系' AND b.prodId = '%s' and b.type='prod' MERGE (a)-[r:contains {name:'包含'} ] -> (b) RETURN r

4 删除全部节点

match (n : TEST) delete n

5 按条件删除节点

MATCH (n:points {pointCode:'%s'} ) delete n

6 删除节点,以及节点之间的关系

MATCH (n:points)-[r]-() DELETE n,r

7 按条件删除节点,以及节点之间的关系

MATCH (n:points {type:'point',pointCode:'%s'} )-[r]-() DELETE n,r

8 按照ID删除节点

MATCH (n:设备体系) WHERE id(n) = 209 DETACH DELETE n RETURN n

9 按条件查询

MATCH (n:`设备体系`) WHERE  n.name = '设备体系' RETURN n LIMIT 25

10 修改节点

 

//[{r=35, color=#ff4500, pointname=测点01, name=测点01, pointcode=cedian01, uuid=170}, {dataPointId=cedian1, title=测点1修改09, uuid=192}]

MATCH (p:测点1)  WHERE p.pointcode = 'cedian01' SET p.pointname = '测点01_pointname' ,p.name = '测点01_name'

 

  

 

posted @ 2022-10-25 17:03  __破  阅读(115)  评论(0)    收藏  举报