9.1.5 Идентификатор со специальными символами

Чтобы ввести метку, которая содержит символы, не являющиеся буквами английского алфавита, вы можете заключить идентификатор в значки "`", например:

Запрос

MATCH (`This isn't a common identifier`)
WHERE `This isn't a common identifier`.name='A'
RETURN `This isn't a common identifier`.happy

Возвращается узел с именем "A":

Таблица 9.5 Результат

`This isn't a common identifier`.happy
"Yes!"

9.1.6 Псевдоним (алиас) столбца

Если имя столбца должно отличаться от используемого выражения, вы можете переименовать его, с помощью AS <новое имя>.

Запрос

MATCH (a { name: "A" })
RETURN a.age AS SomethingTotallyDifferent

Возвращает свойство age (возраст) узла, и переименовывает столбец.

Таблица 9.6 Результат

SomethingTotallyDifferent
55

9.1.7 Необязательные свойства

Если свойство может быть или не быть, вы всё рвно можете выбрать его обычным способом. Если свойство отсутствует, оно будет трактоваться как NULL.

Запрос

MATCH (n)
RETURN n.age

Этот пример возвращает возраст, если это свойство есть у узла, или NULL, если - нет.

Таблица 9.7 Результат

n.age
55

9.1.8 Другие выражения

Любое выражение может использоваться как возвращаемый элемент – литералы, предикаты, свойства, функции и всё остальное.

Запрос

MATCH (a { name: "A" })
RETURN a.age > 30, "Я литерал",(a)-->()

Возвращает предикат, литерал и вызов функции с параметром выражения образца.

Таблица 9.8 Результат

a.age > 30"Я литерал"(a)-->()
true "Я литерал"[[Node[0]{name:"A",happy:"Yes!",age:55},:KNOWS[0]{},Node[1]{name:"B"}],[Node[0]{name:"A",happy:"Yes!",age:55},:BLOCKS[1]{},Node[1]{name:"B"}]]

9.1.9 Уникальные результаты

DISTINCT запрашивает только уникальные строки в зависимости от столбцов, которые образуют вывод.

Запрос

MATCH (a { name: "A" })-->(b)
RETURN DISTINCT b

Запрос возвращает узел с именем B, но только один раз.

Таблица 9.9 Результат

b
Node[1]{name:"B"}

Предыдущая | Следующая