ORDER BY 절을 이용함에 있어서,
일반적으로 특정 컬럼의 문자열이나 숫자로 오름/내림차순 정렬하는게 대부분이지만,
특정 필드의 특정 값을 우선순위로 정렬하고 싶을때가 가끔 있더라구요

MySQL 에선 요런 쿼리가 가능하네요
처음엔 참 낯설어서 어색했는데,
계속 보다보니 참 단정한 모습이네요^^

SELECT * FROM Keyword
ORDER BY (
    CASE
        WHEN vc_kind = 'all' THEN 1
        WHEN vc_kind = 'member' THEN 2
        ELSE 3
    END
) ASC

참조: http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html



쿼리를 더욱 깔끔하게 처리할 수 있는 다른 방법은 없을까요???
Creative Commons License
Creative Commons License
http://min9nim.kr/trackback/220 관련글 쓰기
YOUR COMMENT IS THE CRITICAL SUCCESS FACTOR FOR THE QUALITY OF BLOG POST
  1. 지나가는이 2010/02/16 12:55  댓글주소  수정/삭제  댓글쓰기

    field(필드명,'임의순서1','임의순서2'...) [DESC]
    한글이 포함된 경우 앞에 BINARY를 붙이면 되네요...