MS SQL Server 2005에서 조건부 정렬로 하나의 쿼리를 작성하고 있는데 문제는 두 개의 열을 사용하여 조건부를 어떻게 정렬 할 수 있는지 모른다는 것입니다.
이와 같은 코드를 작성하면 정상적으로 작동합니다.
select
*
from
table
order by
case @pkr
when 'kol' then kol
when 'nci' then nci
end
두 개 이상의 열에 대해 조건부 순서를 만드는 방법을 모르겠습니다
select
*
from
table
order by
case @pkr
when 'KOL-NCI' then kol,nci
when 'kol-MPCI' then kol,mpci
end
동적 TSQL을 만들고 사용하는 아이디어가 sp_executesql
있지만 여전히 더 나은 아이디어를 찾고 있습니까?
ORDER BY CASE 표현식
—
gbn
CASE .. END가 ORDER BY에있는 것이 의미가 있습니까? 를 확인할 수도 있습니다 . . 이 질문은 PostgreSQL의 맥락에서 제기되었지만 WRT 동적 쿼리 대 주석 및 고려 사항의 대부분은
—
joanolo
CASE
이 경우에 적용 할 수 있습니다.