首页 > 其他分享 >Neo4j CQL --- 增

Neo4j CQL --- 增

时间:2024-10-29 17:47:01浏览次数:5  
标签:石河子大学 name CQL 创建 CREATE --- Neo4j 节点 nodeName

一、创建节点Node

(一) 创建不带属性的节点

CREATE ( nodeName : nodeLabel )

下面是这条语句的详细解释:

  1. CREATE: 这是一个用于创建新节点、关系的关键字。

  2. ( nodeName : nodeLabel ):

    • nodeName: 这是你为新节点指定的引用变量名(可选),方便在后续的CQL操作中引用这个节点,要注意它并不是节点的名字,请看下面的例子。

    • nodeLabel: 这是为节点指定的标签,用于对节点进行分类。标签可以帮助你更好地组织和查询数据。

例如,我们执行如下语句(点击蓝色箭头执行)

 在Neo4j左侧的导航栏中,Node labels下多了个"大学"标签,但Graph界面中,我们新创建的节点没有显示"石河子大学",而是显示了系统自动为这个节点生成的唯一标识也就是id,原因会在后面的章节中说明。

然后,我们用DELETE关键字将这个节点删除 (MATCH关键字根据标签和属性进行查询,将查询到的结果返回给引用变量nodeLabel(下图中是石河子大学),具体用法将在后面介绍)

(二) 创建带属性的节点

CREATE (
            nodeName : nodeLabel 
            {
                propertyKey1 : value1, 
                propertyKey2 : value2, 
                ... 
            }
)

让我们逐部分解析:

  1. CREATE: 这个关键字用于创建新的节点或关系。

  2. ( ): 括号内的部分定义了你要创建的节点。

  3. nodeName: 这是节点的引用变量名(可选)。它使你能够在同一查询中或后续查询中引用这个节点。

  4. nodeLabel: 这是节点的标签,用于分类和描述节点的类型。

  5. { ... }: 花括号内是节点的属性定义。你可以为节点设置一个或多个属性,属性以键值对的形式表示。例如,propertyKey1 和 propertyKey2 是属性名,value1 和 value2 是对应的值(字符串需要用引号包裹)。

类比一下面向对象, 我们发现: nodeLable就像是面向对象中的, 而nodeName则是这个类的一个实例对象, 花括号中的那些键值对则是这个对象的属性及其属性值

例如,我们执行下面的语句: 

CREATE (
            石河子大学 : 大学 
            {
                name : '石河子大学', 
                地址 : '新疆维吾尔自治区石河子市北四路221号'
            }
)

可以看到name属性为绿色,说明它被系统保留为关键字,而它就是节点的名字  

二、创建关系Relationship

(一) 创建已存在节点间的关系

为了演示两个已存在节点关系的创建,我们需要再创建一个新的节点,对此我们执行如下语句:

CREATE (
            信息科学与技术学院 : 学院 
            {
                name : '信息科学与技术学院', 
                地址 : '石河子大学北区'
            }
)

这样我们的数据库中就有两个节点了

接下来我们创建这两个已存在的节点之间的关系

执行下面的语句

MATCH (u : 大学 {name: '石河子大学'}        ) , 
      (c : 学院 {name: '信息科学与技术学院'} )

CREATE (c)-[:BELONGS_TO]->(u)

 下面是详细解释: 

  • (u : 大学 {name: '石河子大学'})

    • u: 这是一个引用变量,代表我们匹配到的节点。

    • :大学: 这是节点的标签,表示该节点的类型为“大学”。

    • {name: '石河子大学'}: 这是一个属性条件,用于找到名称为“石河子大学”的节点。

  • (c : 学院 {name: '信息科学与技术学院'})

    • (c): 表示“信息科学与技术学院”的节点,之前在 MATCH 中找到的节点。

    • -[:BELONGS_TO]->: 这部分表示要创建一个关系。BELONGS_TO 是关系的类型,箭头表示关系的方向,从 c 指向 u

    • (u): 表示“石河子大学”的节点,作为关系的目标。

  • (c)-[:BELONGS_TO]->(u)

    • c: 另一个变量,代表匹配到的节点。

    • :学院: 表示该节点的类型为“学院”。

    • {name: '信息科学与技术学院'}: 查找名称为“信息科学与技术学院”的节点。

(一) 创建尚未存在的节点及其关系 

有了前面创建节点和关系的经验,我们就可以将他们一同创建,而不必先创建节点然后再创建关系,具体语法规则如下:

CREATE 

(   
    nodeName1 : nodeLabel1
    { 
        propertyKey1 : value1, 
        propertyKey2 : value2,
        ......
    } 
)
    
-[:RELATIONSHIP_LABEL]->

( 
    nodeName2 : nodeLabel2 
    {
        propertyKey1 : value1, 
        propertyKey2 : value2,
        ......
    } 
)

举个例子,执行如下代码(nodeName是否为空都不影响,但为了美观我都填了)

CREATE 

(   
     软件工程 : 专业
    { 
        name : '软件工程'
    } 
)
    
<-[:属于]-

( 
    小李 :  学生
    {
        name : '小李', 
        性别 : '男'
    } 
)

运行结果如下:

 

 

 

标签:石河子大学,name,CQL,创建,CREATE,---,Neo4j,节点,nodeName
From: https://blog.csdn.net/m0_62756968/article/details/143304683

相关文章

  • layui下拉框xm-select自定义搜索使用方法
    xm-select介绍始于Layui,下拉选择框的多选解决方案git地址:https://gitee.com/maplemei/xm-select文档说明:https://codecp.tech/static/xm-select/#/component/options什么情况下使用下拉框的数据量比较大需要支持下拉框的搜索如何使用自定义搜索引用xm-select,使用最......
  • AtCoder Beginner Contest 366 - VP记录
    A-Election2高桥日常出镜,kkk好好学学。点击查看代码#include<cstdio>usingnamespacestd;intmain(){ intn,t,a; scanf("%d%d%d",&n,&t,&a); if(t>n-t||a>n-a)printf("Yes\n"); elseprintf("No\n"); return0;......
  • 1035-入门-级数求和
    一、问题重述:已知:Sn=1+1/2+1/3+…+1/n。显然对于任意一个整数 k,当 n 足够大的时候,Sn​>k。现给出一个整数 k,要求计算出一个最小的 n,使得 Sn​>k。1.1、输入格式一个正整数 k。1.2、输出格式一个正整数 n。输入输出样例输入 1输出 2说明/提示【数据范......
  • KingbaseES V8R6集群部署案例之---install.conf配置错误
    案例说明:KingbaseESV8R6集群在通过脚本部署时,提示节点无法通过securcmdd连接,部署失败。适用版本:KingbaseESV8R6一、问题现象如下所示,在执行脚本部署时,提示无法和集群节点通过8890端口建立连接:二、问题分析1、测试节点securecmdd互信连接如下所示,节点之间securecmdd......
  • 知识的定义与分类体系详解 - 从零基础到专业理解
    知识的定义与分类体系详解-从零基础到专业理解引言1.什么是知识?2.知识有什么特点?3.知识的分类3.1按照知识层次划分(就像游戏的等级)3.2按照知识的性质划分(就像食谱的不同部分)3.3按照知识来源划分(就像知识的"家族")4.知识的应用有趣的小练习小贴士关键词引言......
  • Process finished with exit code -1 是什么意思
    “Processfinishedwithexitcode-1″是指程序在执行过程中以非正常的退出码(exitcode)结束。在计算机编程中,进程的退出码是一个整数值,通常用于指示程序的执行状态。负数的退出码通常表示程序遇到了错误或异常情况而非正常终止。1.“Processfinishedwithexitcode-1″的......
  • element-plus自定义表格根据内容合并行
    用el-table组件时,对于自定义表头,多级表头的使用在官网都有详细介绍。 在这次项目中用到了,自定义合并行,根据行内容相同的合并。前提是两个行要挨着。先看效果: 实现原理:原理很简单,重点在于组件span-method这个属性, 这个属性方法会一个单元格一个单元格去渲染,参......
  • Educational Codeforces Round 171 (Rated for Div. 2) 题解(A-C)
    EducationalCodeforcesRound171(RatedforDiv.2)题解(A-C)这场ABC全都犯病了(悲伤)目录EducationalCodeforcesRound171(RatedforDiv.2)题解(A-C)目录A.PerpendicularSegmentsB.BlackCellsC.ActionFiguresA.PerpendicularSegments大意给你一个......
  • 什么是“fail-fast”
    “Fail-fast”指的是在迭代集合时,如果发现集合的结构被意外地修改(例如添加、删除或更新了元素),那么迭代器会立即抛出一个异常,以避免出现不一致的行为。这是一种用于检测并报告并发修改问题的机制,它能够在问题发生的早期阶段立即失败(即抛出异常),从而防止代码执行错误逻辑或产......
  • QILSTE H8-316QHR高亮红光LED灯珠 发光二极管LED
    在电子组件的多彩世界中,H8-316QHR以其鲜明的高亮红光脱颖而出。这款LED,尺寸紧凑至3.2x1.5x0.8mm,却蕴含着强大的性能。它不仅符合EIA规范标准包装,更是环保的ROHS合规产品,防潮等级达到Level3,完美适配SMT组装和焊接工艺。**技术参数的深度剖析**深入探讨H8-316QHR的心脏——技......