n1ql запрос, где предложение возвращает все, если аргумент пустой или ноль - PullRequest
1 голос
/ 14 июня 2019

Как написать запрос n1ql для возврата записей, если переданный аргумент в выражении where пуст или нулевой?

[{
 "name": "John",
 "age": 12
},
{
 "name": "Smith",
 "age": 12
},
{
 "name": "Kevin",
 "age": 15
}]
@Query("SELECT * FROM #{#n1ql.bucket} " +
            "WHERE age = $1;")
List<Name> findByAge(Integer age);

Ожидается: Если возраст пуст return

[{
 "name": "John",
 "age": 12
},
{
 "name": "Smith",
 "age": 12
},
{
 "name": "Kevin",
 "age": 15
}]

Если возраст 12 , возврат

[{
 "name": "John",
 "age": 12
},
{
 "name": "Smith",
 "age": 12
}]

1 Ответ

1 голос
/ 14 июня 2019

Попробуйте это

SELECT *
FROM default
WHERE age = $1 OR IFMISSINGORNULL($1,"") = "";
...