ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 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


    혹시나 모를 삽질하실 사람을 대신해 올려본다 ^^;;

Designed by Tistory.