Вот список распространенных команд Apoc (APOC означает «Потрясающие процедуры в Cypher»), а также примеры кода:
-
apoc.coll.partition
– разбивает список на несколько подсписков в зависимости от заданного размера раздела.
Пример:RETURN apoc.coll.partition([1, 2, 3, 4, 5, 6], 3) AS result
-
apoc.coll.zip
– объединяет два списка в список пар ключ-значение.
Пример:RETURN apoc.coll.zip(['name', 'age'], ['John', 25]) AS result
-
apoc.convert.toTree
– преобразует список узлов в древовидную структуру на основе указанного типа связи.
Пример:MATCH (n:Node) WITH COLLECT(n) AS nodes RETURN apoc.convert.toTree(nodes, '<RELATIONSHIP_TYPE>') AS result
-
apoc.date.format
– форматирует значение даты по определенному шаблону.
Пример:RETURN apoc.date.format(datetime(), 'yyyy-MM-dd HH:mm:ss') AS result
-
apoc.math.round
– округляет числовое значение до указанного количества десятичных знаков.
Пример:RETURN apoc.math.round(3.14159, 2) AS result
-
apoc.text.regexGroups
– извлекает совпавшие группы из шаблона регулярного выражения.
Пример:RETURN apoc.text.regexGroups('Hello, my name is John', 'Hello, my name is (\w+)') AS result
-
apoc.spatial.distance
– вычисляет расстояние между двумя пространственными точками.
Пример:RETURN apoc.spatial.distance({latitude: 52.520008, longitude: 13.404954}, {latitude: 51.5074, longitude: -0.1278}) AS result
-
apoc.cypher.run
— динамически выполняет запрос Cypher.
Пример:CALL apoc.cypher.run('MATCH (n:Node) RETURN n', {}) YIELD value RETURN value AS result
-
apoc.load.json
– загружает данные JSON из URL-адреса или файла.
Пример:CALL apoc.load.json('https://example.com/data.json') YIELD value RETURN value AS result
-
apoc.text.sanitizeHTML
– очищает строку HTML, удаляя потенциально опасные элементы.
Пример:RETURN apoc.text.sanitizeHTML('<script>alert("XSS");</script>') AS result
Это всего лишь несколько примеров из множества доступных команд Apoc. Дополнительную информацию и дополнительные команды вы можете найти в документации APOC.