Neo4j的使用

本文介绍如何使用Neo4j创建股票知识图谱,包括安装配置、创建股票节点、交易所及省份节点,以及建立节点间的关系等操作,并演示了查询、删除和更新节点的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

声明:本人是根据张曙光武汉大学b站视频学习的

一.安装软件

网上许多步骤按照来就行

二 .打开软件

Win+R ->cmd 输入neo4j.bat console启动
浏览器输入http://localhost:7474/browser/

三.创建一个简单的股票知识图谱

1.建立几只股票的结点

创建一个节点的Cypher命令:
create(Variable:Lable{Key1:Value1,Key2,Value2})return Variable
创建一个股票的结点:
create(n:Stock{name:‘安琪酵母’,code:‘600298’,launchDate:date(“2000-08-18”)})return n
一次创建几个股票的结点
create(n:Stock{name:‘招商银行’,code:‘600036’,launchDate:date(“2002-04-09”)}),(:Stock{name:‘中科创达’,code:‘300496’,launchDate:date(“2015-12-10”)}),(:Stock{name:‘华工科技’,code:‘000988’,launchDate:date(“2000-06-08”)}),(:Stock{name:‘国信证券’,code:‘002736’,launchDate:date(“2014-12-29”)})

2,建立上海证券交易所和深圳证券交易所两个节点

create(n:SecuritiesExchange{name:‘上海证券交易所’}),(:SecuritiesExchange{name:‘深圳证券交易所’})return n;

3,建立省市地方名称的节点

create(n:Province{name:‘湖北’}),(:Province{name:‘北京’}),(:Province{name:‘广东’})return n;

4,建立股票和证券交易所关系

创建股票节点‘安琪酵母’和证券交易所节点‘上海证券交易所’的关系
MATCH(a:Stock),(b:SecuritiesExchange)
WHERE a.name=‘安琪酵母’ AND b.name=‘上海证券交易所’
CREATE(a)-[r:Exchange]->(b)RETURN r
同样可以创建其他股票节点和证券交易所节点的关系

5,建立股票和省市名称关系

创建股票节点和省市节点的关系
MATCH(a:Stock),(b:Province)
WHERE a.name=‘安琪酵母’ AND b.name=‘湖北’
CREATE(a)-[r:Area]->(b)RETURN r
同样可以创建其他股票节点和省市节点的关系

6,查询节点和关系

查询某个股票的结点:MATCH(a: Stock)WHERE a.name=‘安琪酵母’ RETURN a
查询某个标签的所有结点:MATCH(a: Stock) RETURN a
查询两个结点之间的关系:MATCH(:Stock{name:‘安琪酵母’})-[r]->(:Province{name:‘湖北’})RETURN type®
通过函数type获取关系的类型:MATCH(:Stock{name:‘安琪酵母’})-[r]->()RETURN type®

7,删除结点和关系

删除股票节点:如果该结点存在关系,先删关系,再删结点。
MATCH(a:Stock)WHERE a.name=‘中科创达’
DELETE a
删除某个标签的节点:
MATCH(n:Stock)DELETE n
删除所有节点 MATCH(n)DELETE n
删除两个节点的关系:MATCH(:Stock{name:‘安琪酵母’})-[r]->(:Province{name:‘湖北’})DELETE r
删除某个节点的关系:MATCH(:Stock{name:‘安琪酵母’})-[r]->()DELETE r
删除某个标签的全部关系:MATCH(:Stock)-[r]->()DELETE r

8,更新图形

set子句,用于对更新节点的标签和实体的属性;remove子句,用于删除实体的属性和节点的属性;
增加节点属性:MATCH(a:Stock)WHERE a.name=‘安琪酵母’ SET a.abbreviation= ‘AQJM’ RETURN a
删除节点属性:MATCH(a:Stock)WHERE a.name=‘安琪酵母’ REMOVE a.abbreviation

<think>好的,我现在需要帮助用户获取关于Neo4j使用教程和文档。首先,根据用户提供的引用内容,引用[1]和引用[2]都提到了Neo4j的安装步骤和基础操作。用户明确想要教程和文档,所以我应该先整理这些信息,确保涵盖安装、基础操作以及Python连接方法。 接下来,我需要检查是否遗漏了用户可能需要的其他信息,比如高级操作或者资源链接。引用中提到的节点和边的操作比较基础,但用户可能需要更多细节,比如查询语言Cypher的具体用法,或者图形数据库的应用场景。不过根据现有引用,可能没有这些内容,所以可能需要建议官方文档作为补充。 然后,考虑如何结构化回答。用户可能希望步骤清晰,分点说明。例如,先安装Java环境,再安装Neo4j,接着是基础操作,最后是Python连接。每个部分需要简明扼要,同时提供示例代码,如Python链接的部分,这样用户可以直接复制使用。 另外,用户的问题生成部分需要三个相关问题。需要确保问题与现有内容相关,比如性能优化、数据建模或与其他数据库对比,这些都能帮助用户进一步学习。 最后,检查是否符合系统级指令:使用正确的中文,数学公式格式不适用此处,但代码块需要用反引号包裹。同时,引用标识要正确添加到参考内容末尾,确保用户知道信息来源。</think>以下是为您整理的Neo4j使用教程和文档指引,包含安装配置、基础操作和Python连接方法: ### 一、Neo4j安装配置 1. **前置条件** 需先安装JAVA环境(JDK 11或以上版本),建议通过Oracle官网或OpenJDK获取[^2]。 2. **安装步骤** - Windows:通过官方安装包执行安装,默认端口7474(HTTP)和7687(Bolt) - Linux:使用`apt-get install neo4j`或下载tar包手动配置 - 安装后通过浏览器访问`http://localhost:7474`进入控制台 ### 二、基础CQL操作 ```cypher -- 创建带属性的节点 CREATE (:Person {name:'张三', age:30}) -- 建立关系 MATCH (a:Person),(b:Company) WHERE a.name = '张三' AND b.name = '科技公司' CREATE (a)-[r:WORK_AT]->(b) -- 条件查询 MATCH (p:Person) WHERE p.age > 25 RETURN p -- 删除节点及关联关系 MATCH (p:Person {name:'李四'}) DETACH DELETE p ``` ### 三、Python连接示例 ```python from neo4j import GraphDatabase driver = GraphDatabase.driver("bolt://localhost:7687", auth=("neo4j", "password")) def create_node(tx, name, age): tx.run("CREATE (a:Person {name: $name, age: $age})", name=name, age=age) with driver.session() as session: session.execute_write(create_node, "王五", 28) ``` ### 四、官方学习资源 1. [Neo4j官方文档](https://neo4j.com/docs/) - 含Cypher语法详解 2. [Neo4j GraphAcademy](https://graphacademy.neo4j.com/) - 免费认证课程 3. [APOC扩展库文档](https://neo4j.com/labs/apoc/) - 高级图算法工具包
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值