안녕하세요.
아래 처럼 결과를 뽑을 수 있을까요?
각 이름마다 상태가 있는데 이름마다 전체 상태 개수와 완료인 개수를 결과로 뽑을 수 있을까요?
첫번째 테이블의 결과고 두번째 테이블의 결과로 나와야하는데...잘안되네요.
고수분들 도움 부탁드립니다!
| 상태 | 이름 |
| 완료 | abc |
| 진행 | abc |
| 완료 | abc |
| 완료 | bbb |
| 완료 | bbb |
| 완료 | 전체 | 이름 |
| 2 | 3 | abc |
| 2 | 2 | bbb |
abc는 전체 상태 개수가 3개이고 완료인 상태는 2개.
bbb는 전체 상태 개수가 2개이고 완료인 상태는 2개.
with t as (
select '완료' state, 'abc' name from dual union all
select '진행' state, 'abc' name from dual union all
select '완료' state, 'abc' name from dual union all
select '완료' state, 'bbb' name from dual union all
select '완료' state, 'bbb' name from dual
)
select count(decode(state, '완료', 1)) finished, count(*) total, name
from t
group by name
order by name asc
감사합니다. 잘동작하네요!!