질문
Q #2404
order_by 질문
헛발이
2013-10-09 18:27:46
선배님들 부탁드려요~
데이터는
0
1
0
3
0
0
2
이렇게 되어 있는 데이터를
1
2
3
0
0
0
0
이렇게 정렬 하고 싶은데요...
order_by를 그냥 하면
0
0
0
0
1
2
3
이 되거든요...
0을 가장 밑으로 보내는 order 를 하고 싶은데...
답변
3
#1
빛그림
2013-10-09 20:19:55
mysql>SELECT * FROM 테이블명 ORDER BY CASE 필드명 WHEN '0' THEN 0 END, 필드명 ASC
위 코드와 같은 형식으로 작성하시면 잘 될거에요.
0일 경우 정렬 순서를 0번로 하라는 의미를 담은 쿼리문입니다.
WHEN문을 이용하면 임의의 순서로 정렬을 시킬 수 있습니다. 즉 0이든 1이든 어떠한 특정 값도 원하는 위치로 정렬할 수 있습니다.
#2
들국화
2013-10-10 11:34:12
SELECT col FROM tablename ORDER BY col = 0, col;
#3
헛발이
2013-10-10 11:50:55
빛그림자님 들국화님 감사합니다.
많은 도움이 되었습니다.
위 코드와 같은 형식으로 작성하시면 잘 될거에요.
0일 경우 정렬 순서를 0번로 하라는 의미를 담은 쿼리문입니다.
WHEN문을 이용하면 임의의 순서로 정렬을 시킬 수 있습니다. 즉 0이든 1이든 어떠한 특정 값도 원하는 위치로 정렬할 수 있습니다.