2017-01-19 3 views
0

У меня есть этот запрос:SQL подсчета строк и Inner присоединиться к

select s.LastState 
     ,count(s.LastState) as sumS 
from table1 t1 
    join table2 t2 
     on t1.ID = t2.ID 
    join (select LastState 
       ,count(LastState) as sum 
      from table1 
      where ID = X 
      and LastState = 1 
      or LastState = 2 
      group by LastState 
     ) s 
     on s.LastState = t1.LastState 
group by s.LastState 

Это возвращает количество как государственных, так и я хотел бы иметь сумму обоих моих подсчетов.

В настоящее время я вижу свою первую линию давайте признать

10 состояние 1 и 5 состояние 2 для моего ID X

, и я хотел бы видеть 15 (сумма отсчетов для обоих состояний).

+6

Просьба указать данные образца и желаемый результат. Не описывайте это. – Siyual

+0

Чтобы получить общую сумму, просто удалите предложение 'group by'. –

+0

данные примера: -line 1: 10-line 2: 5. Что я хочу: -line 1: 15 –

ответ

0
select --s.LastState 
     LastState='LastState1and2' 
     , count(s.LastState) as sumS 
from table1 t1 
    join table2 t2 
     on t1.ID = t2.ID 
    join (select LastState 
       ,count(LastState) as sum 
      from table1 
      where ID = X 
      and LastState = 1 
      or LastState = 2 
      group by LastState 
     ) s 
     on s.LastState = t1.LastState 
--group by s.LastState 
+0

Привет! Большое спасибо, действительно, вы гений! :) Но у меня все еще есть проблема, вот мой новый пост, если вы хотите взглянуть ... https://stackoverflow.com/questions/41746714/retrieve-multiple-sum-columns-of-sub-queries –

Смежные вопросы