How to Use If else in Neo4j Cypher or using RNeo4j?
My Neo4j Database has 5 different types of nodes and total 120k nodes.
There are very few cases where all 5 types of node are connected through relationships.
For example, (A)-->(B)-->(C)-->(D)-->(E).
In that case I want to return this path of 4 length depending on id search, else return any path of 4 that exist else any path of 3 so on.
Currently, I am sending 5 path cypher, 4 path cypher, so on from R program to Neo4j, which is expensive.
Is there any easiest way to do this in single Cypher.?
There are many question discussion similar to this which suggest use of CASES, FOR EACH, APOC. But nothing seems to work for me
r neo4j cypher r-neo4j
add a comment |
My Neo4j Database has 5 different types of nodes and total 120k nodes.
There are very few cases where all 5 types of node are connected through relationships.
For example, (A)-->(B)-->(C)-->(D)-->(E).
In that case I want to return this path of 4 length depending on id search, else return any path of 4 that exist else any path of 3 so on.
Currently, I am sending 5 path cypher, 4 path cypher, so on from R program to Neo4j, which is expensive.
Is there any easiest way to do this in single Cypher.?
There are many question discussion similar to this which suggest use of CASES, FOR EACH, APOC. But nothing seems to work for me
r neo4j cypher r-neo4j
2
What you meandepending on id search? What about example?
– stdob--
Nov 14 '18 at 21:37
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10
add a comment |
My Neo4j Database has 5 different types of nodes and total 120k nodes.
There are very few cases where all 5 types of node are connected through relationships.
For example, (A)-->(B)-->(C)-->(D)-->(E).
In that case I want to return this path of 4 length depending on id search, else return any path of 4 that exist else any path of 3 so on.
Currently, I am sending 5 path cypher, 4 path cypher, so on from R program to Neo4j, which is expensive.
Is there any easiest way to do this in single Cypher.?
There are many question discussion similar to this which suggest use of CASES, FOR EACH, APOC. But nothing seems to work for me
r neo4j cypher r-neo4j
My Neo4j Database has 5 different types of nodes and total 120k nodes.
There are very few cases where all 5 types of node are connected through relationships.
For example, (A)-->(B)-->(C)-->(D)-->(E).
In that case I want to return this path of 4 length depending on id search, else return any path of 4 that exist else any path of 3 so on.
Currently, I am sending 5 path cypher, 4 path cypher, so on from R program to Neo4j, which is expensive.
Is there any easiest way to do this in single Cypher.?
There are many question discussion similar to this which suggest use of CASES, FOR EACH, APOC. But nothing seems to work for me
r neo4j cypher r-neo4j
r neo4j cypher r-neo4j
asked Nov 14 '18 at 21:20
Akshay TenkaleAkshay Tenkale
112
112
2
What you meandepending on id search? What about example?
– stdob--
Nov 14 '18 at 21:37
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10
add a comment |
2
What you meandepending on id search? What about example?
– stdob--
Nov 14 '18 at 21:37
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10
2
2
What you mean
depending on id search? What about example?– stdob--
Nov 14 '18 at 21:37
What you mean
depending on id search? What about example?– stdob--
Nov 14 '18 at 21:37
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53308900%2fhow-to-use-if-else-in-neo4j-cypher-or-using-rneo4j%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53308900%2fhow-to-use-if-else-in-neo4j-cypher-or-using-rneo4j%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
What you mean
depending on id search? What about example?– stdob--
Nov 14 '18 at 21:37
All these types represented by labels? And if so does the order matter? Could we interpret your pattern as a path with nodes of those labels in that specific order, or does the order of the labeled/type nodes not matter?
– InverseFalcon
Nov 14 '18 at 23:10
@stdob-- I mean search based on ID property of any label. For Example, suppose user input ID property of Node A, then search if any pattern exists. Order doesn't matter. All types are represented by labels.
– Akshay Tenkale
Nov 15 '18 at 19:10