Как выполнить левое соединение в Hibernate Query Language (HQL)

Необходимо получить записи из двух таблиц

Таблица1: KFT_M_CUSTOMER_CART_LIST

Таблица2: KFT_STATIC_DETAILS

Я пробовал этот запрос SQL, он работает в SQLserver

но этот запрос не работает в HQL

как писать в HQL запросе

SELECT      isnull(S1.VALUE,'') AS PRINT_MEDIUM , 
            isnull(S2.VALUE,'') AS PRINT_QUALITY , 
            isnull(S3.VALUE,'') AS PRINT_SIZE,
            isnull(S4.VALUE,'') AS NO_OF_PRINTS

            from KFT_M_CUSTOMER_CART_LIST M

            LEFT JOIN [KFT_STATIC_DETAILS] S1 ON S1.MASTER_ID=100 AND S1.DETAIL_ID=M.PRINT_MEDIUM
            LEFT JOIN [KFT_STATIC_DETAILS] S2 ON S2.MASTER_ID=200 AND S2.DETAIL_ID=M.PRINT_QUALITY
            LEFT JOIN [KFT_STATIC_DETAILS] S3 ON S3.MASTER_ID=300 AND S3.DETAIL_ID=M.PRINT_SIZE
            LEFT JOIN [KFT_STATIC_DETAILS] S4 ON S4.MASTER_ID=500 AND S4.DETAIL_ID=M.NO_OF_PRINTS

Класс сущности1: KftStaticDetail

    @Column(name = "MASTER_ID")   
int masterId;

@Id
@Column(name = "DETAIL_ID")
int detailId;

@Column(name = "VALUE")
String value;

@Column(name = "DESCRIPTION")
String description;

@Column(name = "ACTIVE")
String active;

Класс сущности 2: KftCartItem

@Column(name = "PRINT_MEDIUM")
private String printMedium;

@Column(name = "PRINT_QUALITY")
private String printQuality;

@Column(name = "PRINT_SIZE")
private String printSize;

@Column(name = "NO_OF_PRINTS")
private int numberOfPrints; 

Предоставьте также свои классы сущностей.

Pooja Aggarwal 02.11.2018 11:57

Я обновил класс сущности

Ajith Kumar 02.11.2018 12:03
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
26
0

Другие вопросы по теме