HQL Сортировать по запросу, задающему проблему - PullRequest
0 голосов
/ 09 июня 2009

У меня следующий запрос, написанный на HQL для Hibernate.

=============================================== =========================

select new map(ret.retailerDesc as ret_name, ret.id.retailerId as ret_id,
               ret.id.serviceId as service_id,  

(select count(distinct i.inspectionId) as inspections from Inspection i 
inner join i.clgCodeStatus c 
inner join c.retailerOrderses r  
inner join r.cusRetailer cr 
inner join i.inspectionMission m  where ret.id = cr.id  ) as inspections ,

(select count(distinct i.inspectionId) as inspections   from Inspection i 
inner join i.clgCodeStatus c 
inner join c.retailerOrderses r 
inner join r.cusRetailer cr 
inner join i.inspectionMission m 
where ret.id = cr.id  and i.inspectionResult = '1'  ) as match,

(select count(distinct i.inspectionId) as inspections   from Inspection i 
inner join i.clgCodeStatus c 
inner join c.retailerOrderses r 
inner join r.cusRetailer cr 
inner join i.inspectionMission m 
where ret.id = cr.id  and i.inspectionResult = '0'  ) as mismatch  )

from CusRetailer ret  order by inspections desc

=============================================== ========================

При выполнении вышеуказанного запроса выдается следующая ошибка:

ERROR: column "inspections" does not exist

Это дает эту ошибку для "заказа по проверке desc". Если я уберу его, он будет работать нормально.

Может кто-нибудь помочь мне решить эту проблему?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 09 июня 2009

Возможно, вам придется повторить выражение для inspections

...from CusRetailer ret order by count(distinct i.inspectionId)

Возможно, HQL не поддерживает выражения в предложении order by, вам может потребоваться вместо этого использовать запрос SQL.

0 голосов
/ 29 декабря 2009

Я решил это, используя "order by col_1_0_" в приведенном выше запросе .. потому что hibernate создает столбец с именами col_0_0_, col_1_0_, col_2_0_ и т. Д., Так что если вам просто нужно знать порядок вашего столбца и добавить его к порядку соответственно ..

Спасибо.

amar4kintu

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...