my sql order by 정렬 질문드립니다. 고수님들 도와주세요..
본문
현재
select * from member_info where approval='1' order by status desc
이런식으로 사용하고있습니다.
status 는 회원등급
approval 는 가입승인 여부
regdate 는 가입일자 입니다.
위 명령을 실행할 경우
--------------------------------------------
idx ㅣ id ㅣ approval ㅣ status ㅣ regdate
3 ㅣ id3 ㅣ 1 ㅣ 3 ㅣ 2015-02-22
4 ㅣ id4 ㅣ 1 ㅣ 3 ㅣ 2015-02-21
6 ㅣ id6 ㅣ 1 ㅣ 3 ㅣ 2015-02-24
7 ㅣ id7 ㅣ 1 ㅣ 2 ㅣ 2015-02-29
5 ㅣ id5 ㅣ 1 ㅣ 2 ㅣ 2015-02-26
9 ㅣ id9 ㅣ 1 ㅣ 1 ㅣ 2015-02-23
2 ㅣ id2 ㅣ 1 ㅣ 1 ㅣ 2015-02-22
--------------------------------------------
이렇게 정렬이 되는데요
제가 하려고자 하는 정렬은
status 를 먼저 정렬합니다. 3-2-1 그후 regdate 를 또한번 정렬하는데
status 마다 정렬을 해주려고합니다. 제가원하는 정렬의 예시는
--------------------------------------------
idx ㅣ id ㅣ approval ㅣ status ㅣ regdate
4 ㅣ id4 ㅣ 1 ㅣ 3 ㅣ 2015-02-21
3 ㅣ id3 ㅣ 1 ㅣ 3 ㅣ 2015-02-22
6 ㅣ id6 ㅣ 1 ㅣ 3 ㅣ 2015-02-24
5 ㅣ id5 ㅣ 1 ㅣ 2 ㅣ 2015-02-26
7 ㅣ id7 ㅣ 1 ㅣ 2 ㅣ 2015-02-29
2 ㅣ id2 ㅣ 1 ㅣ 1 ㅣ 2015-02-22
9 ㅣ id9 ㅣ 1 ㅣ 1 ㅣ 2015-02-23
--------------------------------------------
이런식입니다. order by status desc, regdate asc 를 사용해보면
status=3 값밖에 정렬이안되고 2와 1이 보여지질 않더라구요
위와같이 한가지를 정렬하면서 그안에서 또 다른값으로 정렬을 또하려면 어떻게 처리해야하나요?
status 를 오름차순으로 정렬한다.
status=3 따로 regdate 내림차순 정렬
status=2 따로 regdate 내림차순 정렬
status=1 따로 regdate 내림차순 정렬
이렇게 하려고 합니다. 도와주세요 ㅠㅠ