Neo4j Cypher: сопоставить несколько значений свойств в массиве - PullRequest
0 голосов
/ 31 августа 2018

Этот запрос работает для сопоставления одного значения свойства 'DOWNLOAD' для content в массиве:

MATCH (profile:Profile)
MATCH (profile)-[:LINK]->(l)
WHERE ANY(content IN l.content WHERE content = 'DOWNLOAD')
RETURN DISTINCT profile

Но я получаю сообщение об ошибке с несколькими значениями свойств 'DOWNLOAD' и 'RECENT' для content и type при включении AND внутри WHERE ANY():

MATCH (profile:Profile)
MATCH (profile)-[:LINK]->(l)
WHERE ANY(content IN l.content WHERE content = 'DOWNLOAD' 
AND type IN l.type WHERE type = 'RECENT')
RETURN DISTINCT profile

1 Ответ

0 голосов
/ 31 августа 2018

Чтобы проверить, существует ли элемент в списке, вы можете использовать оператор IN :

MATCH 
  (profile:Profile)
MATCH 
  (profile)-[:LINK]->(l)
WHERE 
  'DOWNLOAD' IN l.content AND
  'RECENT'   IN l.type
RETURN 
  DISTINCT profile
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...