by 준일정 [SQL Query] mssql sql oracle mysql [2020.07.22 11:32:05]
음.. 특정 컬럼의 데이터들에 가장 앞 글자에 특수문자가 끼워져 있으면
특수문자가 가장먼저 정렬되더라고요
예를들면
ㄱ
ㄴ
*ㄷ
ㄹ
이런 데이터면
이런식으로 정렬되던데...알아보니까 내부적으로 특수문자가 먼저 정렬된다고 하더라고요..(mssql사용중)
혹시 특수문자는 제외하고 정렬하는 방법 없나요?
order by case가 먼저 떠오르긴 하네요.
order by case when left(col,1)='*' then substring(col,2,len(col)-1) else c1 end
ORDER BY REPLACE(col, '*', '')