Skip to content

CQL命令/条款 Cypher

  • 清库
    MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n,r
  • 查询关系
   create (n:Line {name:'1号线'}) return n;
    create (n:Station {name:'古城' }) return n;
create (n:Station {name:'石景山' }) return n;
    match (l:Line {name:'1号线'}), (s:Station {name:'古城'}) MERGE (l)-[:`has`]->(s);
match (l:Line {name:'1号线'}), (s:Station {name:'石景山'}) MERGE (l)-[:`has`]->(s);

match (s1:Station {name:'石景山'}), (s2:Station {name:'古城'}) MERGE (s1)-[:`next`{dist:10}]->(s2);
match (s2:Station {name:'古城'}),(s1:Station {name:'石景山'})   MERGE (s2)-[:`next`{dist:10}]->(s1);

MATCH p=()-[r]->() RETURN *;

MATCH (n)-->() RETURN n

    MATCH n=(:Station { name: '东单' })-[:next|has]->() RETURN n
    MATCH n=(:Station { name: '东单' })-[r]->() RETURN n,r
    
    
    MATCH (n:Station)-[{line_no:"1号线"}]->() 
    RETURN n


    match (n:Line{name:"1号线"})-[r]->(m)-[k]->(v) return n,r,m,k,v

    MATCH (s1:`Station` {name:"东单"}),(s2:`Station` {name:"古城"}),
    p=shortestpath((s1)-[r]->(s2))
    RETURN p

    match p = shortestpath((:Station{name:"东单"})-[*..3]-(:Station{name:"古城"})) return p

    MATCH (s1:`Station` {name:"顺义"}),(s2:`Station` {name:"燕山"}),
    p=shortestpath((s1)-[r:`next`*..]->(s2))
    RETURN p

    MATCH n= (s1:`Station` {name:"东单"}),(s2:`Station` {name:"古城"}),
    p=shortestpath((s1)-[r:next*..]-(s2))
    RETURN p,length(p)
    
     MATCH n=(:Station { name: '东单' })-[r:next|has]-() RETURN n,length(n),sum(r.dist)
    
     获取所有路径使用 [*] 
    路径长度限制
     1..7 路径长度1到7。
     6.. 路径长度6开始。
     .10 路径最长10。
     3 长度为3的路径
  • 模糊查询
  = ~".* XXX .*"
  • 查询
CALL db.relationshipTypes

CALL db.labels()

MATCH n=(:Station { name: '东单' })-[r]->()
RETURN n,r

    MATCH (s1:`Station` {name:"顺义"}),(s2:`Station` {name:"燕山"}),
    p=shortestpath((s1)-[r:`next`*..]->(s2))
    with p as p,reduce(temp=0,r in [x IN relationships(p) WHERE (x.dist) is not null] | r.dist+temp) as total_dist 
    RETURN p,  total_dist ,length(p)

CQL 函数

CQL数据类型

Cypher关键点

() 表示节点

[] 表示关系

{} 表示属性

> 表示关系的方向

更新于:

note