mysql order by 질문입니다 정렬조건

mysql order by 질문입니다 정렬조건

QA

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 가 될지 의문이 들어서요

 

답변을 작성하시기 전에 로그인 해주세요.
전체 2

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT