#spring-boot #jpa #spring-data-jpa
Вопрос:
I am trying the below query in spring boot jpa : version=2.4.5
когда я вижу show SQL для этого запроса, он выполняет выбор p.name вместо выбора варианта
select CASE WHEN (p.name is null) THEN pi.name ELSE p.name END from Product p left join ProductInfo pi ON p.productInfoId=pi.id
Ответ №1:
Я думаю, что ваш запрос select трудно прочитать. Поэтому используйте объединение вместо ключевого слова case when.
Нравится:
select coalesce(p.name, pi.name) as productName from Product p left join ProductInfo pi ON p.productInfoId=pi.id
Комментарии:
1. Я также хотел проверить, пусто ли. найденный результат
Ответ №2:
исправлено с помощью приведенного ниже запроса jpa
select (CASE WHEN (p.name is null OR p.name IS EMPTY) THEN pi.name ELSE p.name END) as name from Product p left join ProductInfo pi ON p.productInfoId=pi.id