У меня есть БД, состоящая из узлов с одной меткой.
Свойства узла содержат, среди прочего, строковый массив переменной длины.
Скажем, узлы выглядят так:
{
"array": ["str1","str2"],
"key1": "whatever",
"key2": "dummy"
}
Большую часть времени, но не всегда, длина массива равна 0.
Я пытаюсь написать запрос Cypher, который бы возвращал только те узлы с массивом ненулевой длины.
IMO, такой запрос должен выглядеть следующим образом:
MATCH (n:mylabel)
WHERE size(n.array)>0
RETURN n
Однако, когда я запускаю его (через веб-интерфейс), БД возвращает ВСЕ узлы, включая узлы с массивом нулевой длины.
Некоторое время я подозревал, что я неправильно использую функцию size ().Однако, когда я ставлю
MATCH (n:mylabel)
RETURN size(n.array)
, система возвращает правильную длину массива.
Пожалуйста, сообщите.