mysql order by 질문입니다 정렬조건
본문
마지막 order by할때
특정 컬럼값이 1이면 id로 정렬
2면 date로 정렬
이렇게 하고싶은데요 이게 가능할까요?
답변 2
쿼리문만 가지고는 안되고
$sql = "select * from tables where ....";
이 있따고 가정하고
특정컬럼값은 $wr_1 로 가정하에 진행합니다.
if ($wr_1 == '1')
$sql2 = " order by id asc "; // id는 보통 알파벳순
else if ($wr_2 == '2')
$sql2 = " order by date desc "; // 일자는 보통 최신일자부터..
$sql .= $sql2;
와 같이 처리가능합니다.
SELECT * FROM xTables WHERE 1 = 1
ORDER BY
(CASE WHEN col1 = 1 THEN col_id
WHEN col1 = 2 THEN col_date
ELSE col2 END
) ASC
이런 쿼리를 왜 쓰시는지가 더 궁금하네요
제 짧은 생각에 원하는 Sort 가 될지 의문이 들어서요
!-->
답변을 작성하시기 전에 로그인 해주세요.