2016-08-31 8 views
1

У меня есть следующие JPQL запроса:JPQL IS NOT NULL возвращает объекты с NULL

@Query("select p FROM Partner p where p.partnerIdentifier IS NOT NULL") 
    List<Partner> findAfterDates(); 

Это должно вернуть все Partner Entities что DO NOT имеют значение NULL для partnerIdentifier.

Однако, я запускаю код и отлаживаю, и я вижу, что возвращенный Collection содержит entities, который имеет null для этого поля.

Это ошибка в JPQL?

ответ

0

Пришел коллега и предложил использовать join, так как объект inner был отображен one to one.

Ниже теперь возвращает правильные результаты:

@Query("select p FROM Partner p join p.partnerIdentifier pi where pi is not null") 
List<Partner> findAfterDates(); 

Еще раз напоминание, что под зимовать у нас есть relational database и что-то, что логически следует работать, используя oop/jpql не делает.