mysql order by 정렬 질문입니다.

· 2013-09-10 (화) 15:11:36 · 2443 · 3
안녕하세요 선배님들
지금 현재 쿼리때문에 고초를 격고 있어서 도움좀 얻고자 질문을 드려봅니다


wr_id | wr_num | ca_name | wr_name | wr_3
-----------------------------------------------------
11 -12 뮤직과 김**
10 -11 뮤직과 강**
9 -10 뮤직과 최**
8 -9 뮤직과 정**
7 -8 뮤직과 성**
6 -7 뮤직과 김**
5 -6 뮤직과 이**
18 -18 실용과 오** 2
98 -83 뮤직과 ㅈ** 4


select wr_id, wr_num, ca_name, wr_subject, wr_3 from g4_write_02_01_02_test
where wr_3 is not null order by wr_3 asc, wr_id desc;




원하는 방식

wr_id | wr_num | ca_name | wr_name | wr_3
-----------------------------------------------------
18 -18 실용과 오** 2
98 -83 뮤직과 ㅈ** 4
11 -12 뮤직과 김**
10 -11 뮤직과 강**
9 -10 뮤직과 최**
8 -9 뮤직과 정**
7 -8 뮤직과 성**
6 -7 뮤직과 김**
5 -6 뮤직과 이**

부탁 좀 드려봅니다
|

댓글 3개

SELECT wr_id, wr_num, ca_name, wr_subject, wr_3 FROM g4_write_02_01_02_test ORDER BY (CASE WHEN wr_3 = "" THEN 1000 ELSE wr_3 END), wr_id DESC
then 다음에 1000은 큰 수를 넣은 겁니다.
테스트를 몇 가지 상황에서 해 보셔야 할 듯합니다.
원하시는 정렬 조건이 이게 맞는지는 잘 모르겠지만...
샘플 데이타를 가지고 만드는건 이렇게 사용하시면 될 것 같습니다.

select *
from (select *
from g4_write_02_01_02_test
where wr_3 is not null
order by wr_3) t1
union all
select *
from (select *
from g4_write_02_01_02_test
where wr_3 is null
order by wr_id desc) t2
답변감사합니다 덕분에 어려움을 덜었습니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
13-09-10 조회 1,636
13-09-10 조회 1,269
13-09-10 조회 1,545
13-09-10 조회 2,111
13-09-10 조회 1,643
13-09-10 조회 892
13-09-10 조회 1,715
13-09-10 조회 1,620
13-09-10 조회 1,845
13-09-10 조회 1,614
13-09-10 조회 2,444
13-09-10 조회 982
13-09-10 조회 837
13-09-10 조회 1,199
13-09-10 조회 1,931
13-09-10 조회 1,066
13-09-10 조회 1,059
13-09-10 조회 2,283
13-09-10 조회 880
13-09-10 조회 1,830