1.Cypher概述

cypher是一种声明式的图数据库查询语言,能高效的查询和更新图数据库,是依赖于模式的。所谓模式(Patterns)是就是众多节点和关系的任意复杂想法。

(1)节点语法

cypher使用()来表示一个节点,以下几种常见的 节点表示方法。

() 匿名节点

(n) 变量为n的节点

(:Movie)匿名属于Movie标签的节点

(n:Movie)变量为n ,属于Movie的节点

(n:Movie{name:"zhangsan"})  变量为n,属于Movie节点,且还有name属性,属性值为zhangsan.

  (2)   关系 语法

     Cypher中使用一对短横线(--)表示一个无方向关系,有方向关系使用-->和<--来表示。方括号[....]可用于添加详情。里面包含变量、属性或者类型信息。常见 的表达式如下:

--> 有方向关系

-[role]-> 变量名为role的有向关系

-[:ACTED_IN]->  名称为ACTED_IN的关系.

-[role:ACTED_IN]-> 名称为ACTED_IN关系,且变量名为role

-[role:ACTED_IN{roles:["NEO"]}]->   关系名ACTED_IN,变量为role,属性为名称为roles,属性值为:NEO。

关系的类型类似于节点的标签,关系的属性等同于节点的属性。属性的值可以为数值。

实例说明;创建一个用户名节点名为zhangsan,还有name属性,属性职位‘zhangsan’, age属性值为100,属于Person标签的人。

创建一个用户节点名为lisi,name属性为lisi,age属性为50的 人,他们之间关系是FRIEND_OF,且还有关系属性oldfrend 。

具体的实现如下:

create (zhangsan:Person{name:"zhangsan",age:100})  return zhangsan   #创建节点test1。

create (lisi:Persion{name:"lisi",age:"50"}) return lisi   #创建节点test2。

create(zhangsan)-[:FRIEND_OF{reli:["oldfrend "]}]->(lisi) #创建张三和李四关系。

(六)图数据neo4j之cypher(一)的更多相关文章

  1. (二)图数据neo4j基本认识

    1.neo4j介绍 Neo4j是由Java和Scala实现的开源NoSQL图数据库.自2003年开始研发,直到2007年正式发布第一版.Neo4j的源代码托管在GitHub上,技术支持托管在Stack ...

  2. (四)图数据neo4j用户管理

    1.用户管理 neo4j可通过内置函数,进行用户的创建.查看.删除. (1)用户创建; CALL dbms.security.createUser(name,password,requridchang ...

  3. Neo4j使用Cypher查询图形数据

    Neo4j使用Cypher查询图形数据,Cypher是描述性的图形查询语言,语法简单,功能强大,由于Neo4j在图形数据库家族中处于绝对领先的地位,拥有众多的用户基数,使得Cypher成为图形查询语言 ...

  4. 开源软件:NoSql数据库 - 图数据库 Neo4j

    转载自原文地址:http://www.cnblogs.com/loveis715/p/5277051.html 最近我在用图形数据库来完成对一个初创项目的支持.在使用过程中觉得这种图形数据库实际上挺有 ...

  5. 图数据库Neo4j简介

    图数据库Neo4j简介 转自: 图形数据库Neo4J简介 - loveis715 - 博客园https://www.cnblogs.com/loveis715/p/5277051.html 最近我在用 ...

  6. 主流图数据库Neo4J、ArangoDB、OrientDB综合对比:架构分析

    主流图数据库Neo4J.ArangoDB.OrientDB综合对比:架构分析 YOTOY 关注 0.4 2017.06.15 15:11* 字数 3733 阅读 16430评论 2喜欢 18 1: 本 ...

  7. 图数据库neo4j和关系数据库的区别

    相信您和我一样,在使用关系型数据库时常常会遇到一系列非常复杂的设计问题.例如一部电影中的各个演员常常有主角配角之分,还要有导演,特效等人员的参与.通常情况下这些人员常常都被抽象为Person类型,对应 ...

  8. Hello World 之Spring Boot 调用图数据库Neo4j

    明日歌 [清]钱鹤滩 明日复明日,明日何其多! 我生待明日,万事成蹉跎 1. 图数据库Neo4j之爱的初体验 ----与君初相识,犹似故人归 在如今大数据(big data)横行的时代,传统的关系型数 ...

  9. WCF技术剖析之十六:数据契约的等效性和版本控制

    原文:WCF技术剖析之十六:数据契约的等效性和版本控制 数据契约是对用于交换的数据结构的描述,是数据序列化和反序列化的依据.在一个WCF应用中,客户端和服务端必须通过等效的数据契约方能进行有效的数据交 ...

随机推荐

  1. PAT 甲级 1042 Shuffling Machine (20 分)(简单题)

    1042 Shuffling Machine (20 分)   Shuffling is a procedure used to randomize a deck of playing cards. ...

  2. PHP实现简单留言板

    最近学习了下PHP基础,这里做一个简单的留言板,算是对PHP和MySQL的使用做一个整体的练习吧,不遇到问题总感觉学不到东西. 截图如下: 总结: 1>数据库的简单操作,数据库的增删改查: 2. ...

  3. WEB前端动态背景集

    本资源是我在源代码网站上发现的,内附几十种背景动态特效,我单独提取出来精品背景特效在此分享,文件里有20多种精品动态效果,本人觉得可用作于个人博客主页背景,登陆页面背景等,有20多个背景特效,非常漂亮 ...

  4. VMware虚拟机中CentOS7的硬盘空间扩容

    查看centos7系统挂载点信息 扩展VMWare-centos7硬盘空间 对新增加的硬盘进行分区.格式化 添加新LVM到已有的LVM组,实现扩容 1.查看centos7系统挂载点信息 df -h查看 ...

  5. Xmemcached与SpringBoot实际案例

    在本人的这篇文章<Xmemcached集群与SpringBoot整合>基础上,进行XMemcached与SpringBoot实际案例的结合. 有以下这张表,将这张表的增删改查操作都添加到X ...

  6. Stream入门及Stream在JVM中的线程表现

    继上次学习过Java8中的非常重要的Lambda表达式之后,接下来就要学习另一个也比较重要的知识啦,也就如标题所示:Stream,而它的学习是完全依赖于之前学习的Lambda表达式. 小实验引入: 这 ...

  7. mui 打包发布ios 测试

    1.首先在Hbuilder新建一个app项目,把你的代码放进来 2.在manifest.json里设置你想要的一切,图标,应用名,描述,入口页面等等等,然后再配置好你程序里需要用到的模块权限,按需配置 ...

  8. 多个结果集union后保持各自原有排序

    SELECT *FROM ( SELECT TOP (@count1) a.* FROM Article AS a WITH (NOLOCK)LEFT JOIN Article_Type AS at ...

  9. SQLite之rowid与sqlite3_last_insert_rowid()

    //返回最后一次insert的rowid,如果没有插入就返回0 (DB session断开后也返回0, 是保存在进程的内存中) SELECT LAST_INSERT_ROWID(); //找到最大的r ...

  10. logback日志输出至数据库

    我们知道将数据库输出到不同的地方需要使用不同的appender表示,那下面了解一下输出到数据库的DBAppender. 1.DBAppender 由于DBAppender会把记录写到数据库中,因此我们 ...