Как считать 2 поля с разными условиями для каждого счета в HQL - PullRequest
0 голосов
/ 10 марта 2011

У меня проблема с написанием HQL. Проблема в том, что я хочу, чтобы что-то подобное было перенесено на HQL

 select 
   tb.aca_year, 
   (case when tw.isfulltime = 1 then count(te) end) as fulltime,
   (case when tw.isfulltime = 0 then count(te) end) as parttime
 from timetable tb, teacher te, teacherworktype tw 
  where .............
  group by tb.aca_year
 ................

Любое предложение, пожалуйста?

С наилучшими пожеланиями,

1 Ответ

0 голосов
/ 10 марта 2011

Вы можете сделать что-то вроде этого:

select tb.aca_year, 
    sum(case when tw.isfulltime = 1 then 1 else 0 end) as fulltime, 
    sum(case when tw.isfulltime = 0 then 1 else 0 end) as parttime
from timetable tb, teacher te, teacherworktype tw 
where ............. 
group by tb.aca_year ................
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...