Вытянуть выражение в запросе с лимитом / значением по умолчанию? - PullRequest
1 голос
/ 01 февраля 2020

Как я могу использовать ограничение / значение по умолчанию в выражении по запросу в запросе? Учитывая атрибут cardinality-many, как я могу контролировать, сколько его значений будет возвращено (по умолчанию макс. 1000 значений!).

(Трудно определить правильный синтаксис из документации / примеров)

1 Ответ

2 голосов
/ 01 февраля 2020

Limit (для атрибутов cardinality-many)

Возвращает максимум 2 значения атрибута cardinality-many :ns/ints:

[:find  (pull ?a [(limit :ns/ints 2)])
 :where [?a :ns/str ?b]]

Возвращает все значения кардинальности -много атрибута :ns/ints:

[:find  (pull ?a [(limit :ns/ints nil)])
 :where [?a :ns/str ?b]]

По умолчанию

Возвращает значение по умолчанию 2000, если атрибут :ns/ints не имеет значения:

[:find  (pull ?a [(default :ns/ints 2000)])
 :where [?a :ns/str ?b]]

Возвращает значения по умолчанию 2000 и 2001, если атрибут cardinality-many :ns/ints не имеет значений:

[:find  (pull ?a [(default :ns/ints [2000 2001])])
 :where [?a :ns/str ?b]]
...