JPA-запрос: если param - пустая строка, также получить значения NULL - PullRequest
0 голосов
/ 06 марта 2019

У меня следующий запрос:

SELECT p FROM dbEntity p where p.name like %:nameFilter% 

nameFilter по умолчанию - пустая строка (""), ее также можно задать для строки, которую пользователь может ввести.

Теперь регистр по умолчанию получает все строки, в которых столбец имени либо заполнен текстом, либо задан пустой строкой.
Однако есть также строки, в которых имя имеет значение NULL.

Как я могуизменить мой запрос, чтобы он также возвращал строки с NULL, но только если nameFilter - пустая строка?

1 Ответ

1 голос
/ 06 марта 2019

Вы можете использовать coalese и преобразовывать нули в пустые строки, чтобы их можно было извлечь,

 SELECT p FROM dbEntity p where coalesce(p.name,"") like %:nameFilter% 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...