是否有针对Neo4j的.NET版本/绑定?
它看起来正是我想要的,但我在.NET上使用C#.
谢谢
如何使用该字段注入包含Map的属性文件作为附加构造函数arg.
从属性文件加载Map
bean目前使用以下方式设置:
<bean id="graphDbService" class="org.neo4j.kernel.EmbeddedGraphDatabase"
init-method="enableRemoteShell" destroy-method="shutdown">
<constructor-arg index="0" value= "data/neo4j-db"/>
<constructor-arg index="1" value=? />
</bean>
Run Code Online (Sandbox Code Playgroud)
Java等价物:
Map<String,String> configuration = EmbeddedGraphDatabase.loadConfigurations( "neo4j_config.props" );
GraphDatabaseService graphDb = new EmbeddedGraphDatabase( "data/neo4j-db", configuration );
Run Code Online (Sandbox Code Playgroud)
谢谢
我是Neo4j的新手,我有两个节点user并且files有关系:contains,这个关系有一个属性id是一个数组,表示为
(:user)-[:contains{id:[12345]}]->(:files)
Run Code Online (Sandbox Code Playgroud)
但是我想id用值填充属性数组1111并14567 依次使用Cypher查询,我没有找到任何将值推入数组的方法.
在将1111插入财产id之后将会是
(:user)-[:contains{id:[12345,1111]}]->(:files)
Run Code Online (Sandbox Code Playgroud)
在将14567插入财产id之后将会是
(:user)-[:contains{id:[12345,1111,14567]}]->(:files)
Run Code Online (Sandbox Code Playgroud)
我不知道如何顺序地将值填充到属性数组
请帮助,提前致谢
我有一个关于在图形数据库中建模的一般性问题,我似乎无法解决这个问题.
你如何模拟这种关系:"牛顿发明了微积分"?
在一个简单的图表中,您可以像这样建模:
Newton (node) -> invented (relationship) -> Calculus (node)
Run Code Online (Sandbox Code Playgroud)
...所以当你添加更多的人和发明时,你会有一堆"发明的"图形关系.
问题是,你开始需要在关系中添加一堆属性:
...并且您将要开始在这些属性和其他节点之间创建关系,例如:
所以现在似乎"真实世界的关系"("发明")实际上应该是图中的一个节点,图形应如下所示:
Newton (node) -> (relationship) -> Invention of Calculus (node) -> (relationship) -> Calculus (node)
Run Code Online (Sandbox Code Playgroud)
更复杂的是,其他人也参与了微积分的发明,所以图形现在变成了:
Newton (node) ->
(relationship) ->
Newton's Calculus Invention (node) ->
(relationship) ->
Invention of Calculus (node) ->
(relationship) ->
Calculus (node)
Leibniz (node) ->
(relationship) ->
Leibniz's Calculus Invention (node) ->
(relationship) ->
Invention of Calculus (node) ->
(relationship) ->
Calculus (node) …Run Code Online (Sandbox Code Playgroud) 是否可以对密码查询进行分页.例如,产品列表,但我不想显示/检索/缓存所有结果,因为我可以有很多结果.
我正在寻找类似于SQL中的偏移/限制的东西.
cypher跳过+限制+订单是一个很好的选择吗?http://docs.neo4j.org/chunked/stable/query-skip.html
我知道可以使用通配符(*)符号返回Cypher查询中的所有引用,例如:
MATCH p:Product WHERE p.price='1950' RETURN *;
==> +----------------------------------------------------------------+
==> | p |
==> +----------------------------------------------------------------+
==> | Node[686]{title:"Giorgio Armani Briefcase",price:"1950",... |
==> +----------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
但是,结果是一行具有名为"p"的单个节点"列",可以从中访问属性.但是,我希望结果集"行"将属性名称设置为"列".就像是:
MATCH p:Product WHERE p.price='1950' RETURN p.*;
==> +-------------------------------------------+
==> | title | price | ... |
==> +-------------------------------------------+
==> | "Giorgio Armani Briefcase" | "1950" | ... |
==> +-------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
该特定查询无效,但有没有办法实现相同的结果(没有明确列出所有属性,如p.title,p.price,p ...)?
我正在尝试找到具有多个传入关系的所有节点.鉴于此数据:
a-[has]->b
a-[has]->c
d-[has]->b
Run Code Online (Sandbox Code Playgroud)
所以,我正在寻找一个返回'b'的查询,因为它有更多的传入.
此查询已结束.它返回'a'和'b',因为它们都有2个关系:
match (n)--()
with n,count(*) as rel_cnt
where rel_cnt > 1
return n;
Run Code Online (Sandbox Code Playgroud)
但是,此查询(添加' - >')不返回任何内容,我不知道原因:
match (n)-->()
with n,count(*) as rel_cnt
where rel_cnt > 1
return n;
Run Code Online (Sandbox Code Playgroud)
我错了吗?
我正在使用neo4j并执行此查询:
MATCH (n:Person) RETURN n.name LIMIT 5
Run Code Online (Sandbox Code Playgroud)
我得到的名字,但我也需要ids.请帮忙!
我想找出一个节点的所有传入和传出关系.我在其他问题中尝试了几个问题,但没有太多运气.这是我试过的两个
MATCH (a:User {username: "user6"})-[r*]-(b)
RETURN a, r, b
Run Code Online (Sandbox Code Playgroud)
我只有500个节点,它永远运行.一小时后我放弃了.
我试过这个
MATCH (c:User {username : 'user6'})-[r:*0..1]-(d)
WITH c, collect(r) as rs
RETURN c, rs
Run Code Online (Sandbox Code Playgroud)
但是我得到了这个错误
WARNING: Invalid input '*': expected whitespace or a rel type name (line 1, column 35 (offset: 34))
"MATCH (c {username : 'user6'})-[r:*0..1]-(d)"
Run Code Online (Sandbox Code Playgroud)
获得节点的所有关系的正确方法是什么?
我正在使用3.0.3版