Какие графовые базы данных могут выполнять специальные запросы? - PullRequest
0 голосов
/ 04 февраля 2012

Под ad-hoc я подразумеваю запросы, которые можно детализировать до каждого свойства данных.

Запросы, такие как,

  • выборка всех узлов, где type = persion и возраст от 20 до 30
  • любой узел, чей тег [смешно, восхитительно]
  • имя начинается с Se *

1 Ответ

1 голос
/ 05 февраля 2012

С Neo4j вы можете использовать язык запросов Cypher для выражения таких специальных запросов, либо со встроенной консоли инструмента web-admin, через встроенную Java, JRuby или Python-API или через удаленный REST-API с драйверами на многих языках.

Некоторые примеры:

start p=node:types(type='person') where p.age > 20 and p.age < 30 return p
start p=node:node_auto_index("id:*") where p.name =~ /Se.*/ return p
start p=node(0) match r-[:TAG]->tag where tag.name = 'funny' or tag.name = 'adorable' return tag
...