-
Microsoft Query CASE 문카테고리 없음 2012. 7. 19. 16:21
엑셀 안에.. Microsoft Query 라는 녀석이 있다~!
이 녀석으로 엑셀의 데이터를 로딩해서 뽑아보려 했더니......
계속 에러가 나는 것이였다. 쿼리 예제는!
SELECT
field1
, max(case when field2 = 1 then field3 else 0 end)
, max(case when field2 = 2 then field3 else 0 end)
from table
group by field1
field1으로 group by를 한다음에..
두번째 컬럼은 field2 = 1일때 field3의 값
세번째 컬럼은 field2 = 2일때 fiend3의 값
이렇게 뽑아오는 쿼리였다.
근데.. Microsoft Query로.. xls 또는 xlsx 파일을 불러올 경우.. case 문이 먹지 않는다.
Didn't expect 'field2' alter the SELECT column list.
이 문제를 해결하기 위해서.. 여기저기 구굴링 하다.. 30분의 삽질끝에 알아냈다.
바로 IIF 라는 녀석이다 ㅠㅠ.
그래서 완성된 쿼리!
SELECT
field1
, max(IIF(field2 = 1, field3 ,0))
, max(IIF(field2 = 2, field3 ,0))
from table
group by field1
혹시나 모를 삽질하실 사람을 대신해 올려본다 ^^;;