我试图与列表中的所有in建立朋友关系,但是我得到了一个错误:
Node already exists with label User and property "id"=[2]
Neo.ClientError.Schema.ConstraintViolation
基本上,这些is已经存在,我只想同时使用-每个is来创建与多个is的朋友关系。我如何做到这一点,或者有没有其他方法来做同样的事情?我真的很感谢你的帮助。
MATCH (u:User {id:"3"})
FOREACH (id in ["2","4","5
我面临着一个奇怪的行为,在关系属性上使用删除。即使在查询执行之后,也不会删除该属性。temp用于CASE条件检查。在此之后,我必须移除该属性,而这并不是相应发生的。
以下是我的疑问:
MERGE (a { word:"aut" })-[r:jsim]->(b { word:"et" })
ON
CREATE SET r.temp = FALSE ON
MATCH SET r.temp = TRUE
WITH r,
CASE r.val
WHEN r.temp
THEN [a]
ELSE [] END AS toDo UNWIND toDo AS a
我正在neo4j中创建两个节点,其方向属性如下所示:
这两个雇员都在互相打电话,他们通过所谓的关系相互联系。
MATCH (e1:EMP),(e2:EMP) WHERE e1.NUMBER='200' AND e2.NUMBER='100' MERGE (e1)-[r:CALLED]->(e2) SET r.DURATION = ['233']
我的结果如下。
当我在重建方向上建立一种关系时:
MATCH (e1:EMP),(e2:EMP) WHERE e1.NUMBER='100' AND e2.NUMB
例如:
我的Cypher查询是:
MATCH p=(a:AbstractEvent)-[r:NEXT]->(c:AbstractEvent)
WHERE NOT id(a) in [115]
RETURN p
但结果仍然包括115个“客户”节点与"UI.Click“节点的传出关系。为了表明这一点,我仍然需要115个“客户”节点,但没有那些外向的关系。
当匹配时,如何排除节点的所有传出关系?
顺便说一句,在这个例子中,RETURN p和RETURN a,r,c有什么区别?
任何帮助都将不胜感激,谢谢。
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:///dept_emp.csv" AS row
MATCH (emp_no:Employee {emp_no: row.emp_no})
MATCH (dept_no:departments {dept_no: row.dept_no})
MERGE(Employee)-[:belongs_to{from_date: row.from_date,to_date:
row.to_date}]->(departments);
我希望使用此查询(节点的结构)与属性建立
当我试图为SpringData保存一个新节点时,该节点具有与现有节点相同的属性和关系,它只是更新现有节点,而不插入新节点。我用空ID保存它。
有什么问题吗?
Neo4j 3.0.0
春季数据4.1.2
Neo4j OGM 2.0.2
public abstract class ModelObject {
@GraphId
protected Long id;
//getters and setters
@Override
public boolean equals(Object o) {
if (this == o)
通常,我是在从CSV文件加载时在节点之间建立关系。这是我这次用来在节点之间建立关系的一个写成密码的语句。语言节点为39K,描述节点为2M。
MATCH (d:Description),(l:Language)
> WHERE d.description_language = l.language_name
> CREATE (d)-[r:HAS_LANGUAGE]->(l);
过了很长一段时间后,运行我得到的错误是:
Self-suppression not permitted
我为要在关系中使用的属性创建了索引。
Indexes
...
ON :Description
我想返回所有成员的列表,以及它们与一个特定节点的公共邻居的计数。到目前为止,我得到了以下信息:
MATCH (m:Member {name: 'Adam Smith'})-[]->(adamObjects)
MATCH (m2)-[]->(adamObjects)
WHERE m <> m2
RETURN m2.name, COUNT(adamObjects)
但是,我不确定这是否真的返回了我想要的结果。任何帮助都非常受欢迎!
我试图遵循某种关系类型,并返回该路径上的所有节点和(其他)关系,但不通过不属于路径的节点遵循路径。
下面是我设置来演示的实时查询。
在这个例子中,我不希望结果中包含通过B->E->C的关系,因为它们之间没有'depends_on‘关系。
下面是我的许多尝试之一..。(也在控制台中)。
START me=node:node_auto_index(name='A')
MATCH p=me-[d:depends_on*]->others
WITH me,others
MATCH p=me-[r*]-others
RETURN DISTINCT rel
我使用的是Neo4j CE 3.1.1,我在作者和书籍之间建立了一种关系。我想找出作者数量最多的N本书(比如N=10 )。根据我找到的一些示例,我提出了这个查询:
MATCH (a)-[r:WRITES]->(b)
RETURN r,
COUNT(r) ORDER BY COUNT(r) DESC LIMIT 10
当我在Neo4j浏览器中执行这个查询时,我得到了10本书,但是这些书看起来并不像大多数作者写的书,因为它们只显示了与作者的一些写作关系。如果我将查询更改为
MATCH (a)-[r:WRITES]->(b)
RETURN b,
COUNT(r) ORDER BY COU
我正在尝试使用CYPHER合并两个neo4j图形。第一个是国家及其首都的例子。第二个是我创建的示例。 WITH "https://gist.githubusercontent.com/jimmycrequer/7aa867900d0cf0b9588d4354f09cb286/raw/countries.json" AS url
CALL apoc.load.json(url) YIELD value AS v
MERGE (c:Country {name: v.name})
SET c.population = v.population, c.area = v.area
CR
作为更大的查询的一部分,我尝试选择与多个SKU有关联的SKU。随后,为了简单起见,我想删除这些关系,并执行这里不包括的其他修改。
我惊讶地发现,当以下查询返回一个节点时:
MATCH (p:PRODUCT)-[p_s_rel:PRODUCT_SKU]->(s:SKU)
WITH s, p, count(s) AS sCount
WHERE sCount> 1 AND id(s) IN [9220, 9201]
RETURN s
在p_s_rel子句中添加关系WITH将更改结果,并且不返回节点:
MATCH (p:PRODUCT)-[p_s_rel:PRODUCT_SKU]->
我试图用相同的密码在用户之间建立关系。我的数据如下:
User Pincodes
A [111,222]
B [111,333]
C [333,444]
D [111,222]
所以,我想建立A和B之间的关系,因为它们有相同的编码,B和C之间的另一种关系。我写了如下所示,这绝对不是我想要的。
MATCH (a:User),(b:User)
WHERE a.pincode=b.pincode
WITH COLLECT([a,b]) AS its
FOREACH (pincode IN its |
CREATE (a)-[r:LIVESINSAMEAREAAS]->(b)
);