[英]Neo4j (2.2.0): Cypher: Creating Nodes and their IDs
以下是我用来构建第一个节点的查询:
MERGE (Precessional_Era_of_Leo:Event:Calendar
{Bible:-105
, Gregorian:-11080
, Duration:true
, EndBible:2095
, EndGregorian:-8880
, Caption:"Precessional Era of Leo"
, Weblink:"http://www.aquarian-age.net/flory.html"
, ImageLink:"http://www.aquarian-age.net/flory.html"
, Description:"The Precessional Era of Leo (2,200 years)"})
-[:LOCATION
{rname:"rlocation"
, rtype:"from"
, rleft:"Precessional Era of Leo"
, rright:"Earth"}]->
(Earth:Planet:Place {Name:"Earth"})
-[:LOCATION
{rname:"rlocation"
, rtype:"In orbit around"
, rleft:"Earth"
, rright:"Sol"}]->
(Sol:Star:Place {Name:"Sol"})
-[:LOCATION
{rname:"rlocation"
, rtype:"in"
, rleft:"Sol"
, rright:"Milky Way"}]->
(Milky_Way:Galaxy:Place {Name:"Milky Way"})
-[:LOCATION
{rname:"rlocation"
, rtype:"in"
, rleft:"Milky Way"
, rright:"Universe"}]->
(Universe:Place {Name:"The Universe"})
-[:LOCATION
{rname:"rlocation"
, type:"in"
, rleft:"Universe"
, rright:"GOD"}]->
(GOD:Person:Spirit {Name:"YHWH"});
...这是该查询的数据库转储:
create (_0:`Event`:`Calendar` {`Bible`:-105, `Caption`:"Precessional Era of Leo", `Description`:"The Precessional Era of Leo (2,200 years)", `Duration`:true, `EndBible`:2095, `EndGregorian`:-8880, `Gregorian`:-11080, `ImageLink`:"http://www.aquarian-age.net/flory.html", `Weblink`:"http://www.aquarian-age.net/flory.html"})
问题:为什么不
Precessional_Era_of_Leo:Event:Calendar
出来作为
create (`Precessional_Era_of_Leo`:`Event`:`Calendar`)
代替
create (_0:`Event`:`Calendar`
...?
谢谢您的反馈!
反引号有助于转义原本不会作为密码一部分被解析的内容。 因此,如果您想命名标签“ Hello World”(带有空格),可以这样做,但是您必须在“ Hello World”周围使用反引号。
底线是您引用的标签不需要反引号,因为它们不包含任何其他在语法上无效的密码。 因此,是否使用它们都没有关系。 标签名称和由反引号引起来的同名在功能上是等效的。
在您的密码中, Precessional_Era_of_Leo
是您要合并的节点的标识符。 它实际上不是Event
和Calendar
类的标签。 标识符对于您的查询是暂时的,而标签则保留在您创建的节点上的数据库中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.