쿼리문에 강제로 정렬(order by) 지정하는 방법

 글쓴이   뭉충닷컴  날 짜 07-10-20 19:03  조 회 266
 
 
사용할일 거의 없지만 가끔 필요할때가 있더군요 -_-;
(항상 현업의 요청은 뒷통수를 때리지요)



select * from test 이렇게 실행하면 결과값이
——————-
A
B
C
——————-


이렇게 나온다고 할때 이 정렬을


——————-
A
C
B
——————-


이렇게 바꾸고 싶다면 다음과 같이 한다. (A,B,C 데이타가 있는 필드명은 fld라 하겠다)


select * from test order by
    case fld
        when \’A\’ then \’1\’
        when \’B\’ then \’3\’
        when \’C\’ then \’2\’
        else \’9\’
    end


이렇게 case 문을 이용해서 임의로 정렬할 수 있도록 문자순번을 맞춰주면 된다.