返回顶部
首页 > 资讯 > 数据库 >Cypher 入门笔记
  • 645
分享到

Cypher 入门笔记

Cypher入门笔记 2016-11-27 13:11:34 645人浏览 绘本
摘要

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

Cypher 入门笔记

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

CQL

  • CQL代表Cypher查询语言,Neo4j具有CQL作为查询语言。

Neo4j CQL命令/条款

常用的Neo4j CQL命令/条款如下:

S.No. CQL命令/条 用法
1 CREATE 创建 创建节点,关系和属性
2 MATCH 匹配 检索有关节点,关系和属性数据
3 RETURN 返回 返回查询结果
4 WHERE 哪里 提供条件过滤检索数据
5 DELETE 删除 删除节点和关系
6 REMOVE 移除 删除节点和关系的属性
7 ORDER BY 以…排序 排序检索数据
8 SET 组 添加或更新标签

Neo4j CQL 函数

以下是常用的Neo4j CQL函数:

S.No. 定制列表功能 用法
1 String 字符串 它们用于使用String字面量。
2 Aggregation 聚合 它们用于对CQL查询结果执行一些聚合操作。
3 Relationship 关系 他们用于获取关系的细节,如startnode,endnode等

CREATE + MATCH

## 创建节点
CREATE (n1:Dept { deptno:10,dname:"Accounting",location:"Hyderabad" })
RETURN n1

## 查询
# 查询Employee标签下 id=123,name="Lokesh"的节点
MATCH (p:Employee {id:123,name:"Lokesh"}) 
RETURN p    ## 可以用p.id, p.name来限制返回条件

## 创建没有属性的关系与现有节点
MATCH (e:Customer),(cc:CreditCard) 
CREATE (e)-[r:DO_SHOPPING_WITH ]->(cc) 
RETURN r

## 创建与现有节点的属性的关系
MATCH (cust:Customer),(cc:CreditCard) 
CREATE (cust)-[r:DO_SHOPPING_WITH{shopdate:"12/12/2014",price:55000}]->(cc) 
RETURN r

## 创建新节点无属性关系
CREATE (fb1:FaceBookProfile1)-[like:LIKES]->(fb2:FaceBookProfile2) 
RETURN like

## 创建新节点有属性关系
CREATE (video1:YoutubeVideo1{title:"Action Movie1",updated_by:"Abc",uploaded_date:"10/10/2010"})
-[movie:ACTION_MOVIES{rating:1}]->
(video2:YoutubeVideo2{title:"Action Movie2",updated_by:"Xyz",uploaded_date:"12/12/2012"})
 RETURN movie
 
 ## 创建单/多个标签到节点
CREATE (m1:Movie)
CREATE (m1:Movie:Cinema:Film:Picture)

DELETE

  • 删除节点
  • 删除节点及相关节点和关系。
# 删除所有节点和关系
match (n) detach delete n

## 删除指定节点与关系
MATCH (cc: CreditCard)-[rel]-(c:Customer) 
DELETE cc,c,rel

REMOVE

  • 删除属性or标签
## 删除某一属性
MATCH (book { id:122 })
REMOVE book.price
RETURN book

## 删除某一标签
MATCH (m:Movie) 
REMOVE m:Picture

SET

  • 向现有节点或关系添加新属性
MATCH (book:Book)
SET book.title = "superstar"
RETURN book

ORDER BY

  • 对MATCH查询返回的结果进行排序,默认情况下,它按升序对行进行排序。 如果我们要按降序对它们进行排序,我们需要使用DESC子句。
MATCH (emp:Employee)
RETURN emp.empid,emp.name,emp.salary,emp.deptno
ORDER BY emp.name

UNION + AS

  • 将两个不同的结果合并成一组结果
MATCH (cc:CreditCard)
RETURN cc.id as id,cc.number as number,cc.name as name,
   cc.valid_from as valid_from,cc.valid_to as valid_to
UNION
MATCH (dc:DebitCard)
RETURN dc.id as id,dc.number as number,dc.name as name,
   dc.valid_from as valid_from,dc.valid_to as valid_to

其他未整理但CQL相关

  • 字符串函数
  • 关系函数
  • AGGREGATION聚合
  • 索引
  • 约束
  • JAVA api
  • spring DATA Neo4j (ORM)

本文首发于:https://www.wujunchao.top/?p=370

一半是现实,一半是梦想~ 一念花开,一念花落~
您可能感兴趣的文档:

--结束END--

本文标题: Cypher 入门笔记

本文链接: https://lsjlt.com/news/9022.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Cypher 入门笔记
    Neo4j使用Cypher查询图形数据,Cypher是描述性的图形查询语言,语法简单,功能强大,由于Neo4j在图形数据库家族中处于绝对领先的地位,拥有众多的用户基数,使得Cypher成为图形查询语言的事...
    99+
    2016-11-27
    Cypher 入门笔记
  • linux入门笔记
    学习linux也不是那么难,首先你就必须掌握这些入门知识,这样才能让你从新手变老手,下面就从几个方面来教你学linux。【1】Linux介绍【2】vi编辑器(1)三种模式:(2)vi命令【1】Linux介绍(1)四个重要的人物肯.汤姆森 B...
    99+
    2023-06-05
  • erpc(EmbeddedRPC)入门笔记
    ERPC是一种用于嵌入式系统的RPC(远程过程调用)框架。它的设计目标是提供一种简单、轻量级的通信机制,让嵌入式设备可以与其他设备或...
    99+
    2023-09-28
    erpc
  • ARM入门笔记(3)
    第三章 点亮我的LED ――I/O输出实验 一.背景 当完成上述实验后,我就可以像使用51单片机那样,在C文件的main()函数中通过设置相应的寄存器来达到对相应外设(如I/O的输入、输出等)的控制目的。 二.实验目的 通过控制PIO的相关...
    99+
    2023-01-31
    入门 笔记 ARM
  • Linux入门笔记3
    一、管理权限和归属1.权限概述文档归属所有者(u):拥有此文件/目录的用户-user所属组(g):拥有此文件/目录的组-group其他用户(o):除所有者、所属组以外的用户-other访问权限读取(r):允许查看内容-read写入(w):允...
    99+
    2023-01-31
    入门 笔记 Linux
  • Neo4j/cypher学习笔记与学习建议
    简介 本笔记的主要内容是 cypher 查询语言的编写与使用。 笔记主要整理自w3cschool上的neo4j教程以及Neo4j中文网所提供的cypher中文文档,此外还包括少量从其他个人博客与官方手册中整理的内容。 注意:上面所说的”c...
    99+
    2019-02-12
    Neo4j/cypher学习笔记与学习建议
  • Python 入门学习笔记
    1 安装Anaconda和jupyter notebook   之前没有听说过这两个名词,然后看完介绍,按照我自己的理解,Anaconda是一个集合很多环境和模块的存储地方。 Jupyter notebook 就是一个可以在此环境里打代码...
    99+
    2023-01-30
    学习笔记 入门 Python
  • Ansible 入门学习笔记
    本文 的主要内容来自ansible官网书籍。 本文采用vagrant软件基于VirtualBox的虚拟机进行自动化管理,先要安装VirtualBox和vagrant两个软件。类似Docker有Dockerfile, Jenkins有Je...
    99+
    2023-01-31
    学习笔记 入门 Ansible
  • Docker快速入门笔记
    Docker快速入门 前言   当今软件开发领域的一股热潮正在迅速兴起,它融合了便捷性、灵活性和可移植性,让开发者们欣喜若狂。它就是 Docker!无论你是一个初学者,还是一位经验丰富的开发者,都不能错过这个引领技术浪潮的工具。   想...
    99+
    2023-08-23
    docker 笔记 容器
  • 【学习笔记】Mininet 入门
    【学习笔记】Mininet入门实战 课程介绍 Mininet是由一些虚拟的终端节点、交换机、路由器连接而成的一个网络仿真器,它采用轻量级的虚拟化技术使得系统可以和真实网络相媲美。 Mininet可以很方便地创建一个支持SDN的网络:...
    99+
    2023-12-22
    学习 网络 服务器
  • Vue详细的入门笔记
    目录一、 前言二 、初始 Vue(一) Vue 概念理解(二) MVVM 架构(三) Vue 的优点(四) 入门案例三 、Vue 基本语法(一) 声明式渲染(二) 条件判断(三) 循...
    99+
    2024-04-02
  • react入门级详细笔记
    目录一、React的基本认识 1、介绍2、React的特点3、React高效的原因二、React的基本使用1、相关js库2、在页面中导入js库3、编码三、ReactJSX1...
    99+
    2024-04-02
  • Python基础入门笔记(一)
    前言(认识Python) 既然学习 Python,那么至少得了解下这门语言,知道 Python 代码执行过程吧。Python 的历史有兴趣的百度百科下就有,这个不多说了。 1、我们先来了解下什么是解释型语言和编译型语言? 计算机...
    99+
    2023-01-31
    入门 基础 笔记
  • Nodejs学习笔记之入门篇
    分享第一篇,关于 NodeJS —— Javascript 的常用知识以及如何从 Javascript 开发者过渡到 NodeJS 开发者(不会介绍具体的框架)。在读本文前,希望你对 javascript ...
    99+
    2022-06-04
    学习笔记 入门篇 Nodejs
  • python入门学习笔记分享
    一、python的基础语法 1.行连接的方法是最后加上一个‘\' 2.注释:多行注释三引号,#行注释;三引号定义的字符串原样输出(保存原格式) 3.I/O语句:用逗号分隔零个或多个表...
    99+
    2024-04-02
  • [Python入门及进阶笔记]Pytho
    博客迁往:新地址 (点击直达) 新博客使用markdown维护,线下有版本库,自己写的所以会定时更新同步,同时提供更好的导航和阅读体验 csdn对markdown支持不好,所以旧版不会花时间进行同步修订,抱歉 ------------...
    99+
    2023-01-31
    进阶 入门 笔记
  • Node.js入门笔记 之async模块
    目录前言asyncseriesparallelwaterfallmap前言 前面我们介绍了异步模块的CPS解决嵌套回调的方法,但是随着业务的推进,node的更新方法也越来越快,对于异...
    99+
    2024-04-02
  • Mysql学习笔记2--使用入门
    ---创建数据库kakaxi mysql> create database kakaxi; Query OK, 1 row affected (0.02 sec) ---要知道系统中有哪些数据库,可...
    99+
    2024-04-02
  • 小甲鱼python入门笔记(一)(全)
    目录 一、变量和字符串 1、python转义字符 2、交换x,y变量的值 3、原始字符串,忽略转义字符 4、长字符串两种方式 5、字符串加法和乘法 二、是时候讲讲代码了 1、python比较运算符 三、改进小游戏 1、python随机模块r...
    99+
    2023-09-17
    python
  • Python编程入门到实践 - 笔记(
    练习内容包括创建并访问列表列表的索引使用列表中的各个值修改列表中的元素在列表中添加元素 append()在列表中插入元素 insert()在列表中删除元素 del,pop()根据值删除列表中的元素 remove()对列表中的元素进行排列  ...
    99+
    2023-01-31
    入门 笔记 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作