데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

row_number 에서 case 질의 입니다.

호짱 2017.06.13 16:05 Views : 3181

안녕하세요.. 


조회 조건에 사용자가 입력 한 소팅 조건을 받아 소팅하도록 하고자 합니다.


declare

@strDat1 varchar(1). -- 1 : AAA, 2 : BBB, 3 : CCC

@strDat2 varchar(1) -- A : 오른차순 소팅, D : 내림차순 소팅




select row_number() over 

         (order by case @strDat1 when '1' then AAA case @strDat2 when 'A' then ASC else DESC end

                                          when '2' then BBB case @strDat2 when 'A' then ASC else DESC end

                                          when '3' then CCC case @strDat2 when 'A' then ASC else DESC end end) rownum..


이렇게 해도 오류가 발생이 되고, 

select row_number() over 

         (order by case @strDat1 when '1' then AAA 

                                          when '2' then BBB 

                                          when '3' then CCC end  case @strDat2 when 'A' then ASC else DESC end ) rownum..


이렇게 해도 오류가 발생되네요.. 


row_number에서 case 문을 2번 사용할수 없나요?

첫번째 case는 컬럼을 선택하는 것이고, 

두번째 case는 내림차순 오름차순으로 사용하고자 합니다. 


페이징 처리 때문에 하단에서 ORDER BY 에서 소팅을 할수 없고, 

ROW_NUMBER()를 구할때 해줘야 할것 같습니다.

조언 부탁 드리겠습니다.


No. Subject Author Date Views
9886 성능관련 문의 드립니다. Page life expectancy [4] niceman5 2017.06.20 2277
9885 mssql 쿼리질문입니다! [2] 파란약 2017.06.19 3458
9884 재고,판매 관련 설계 [1] 다복이 2017.06.19 2776
9883 쿼리문 질문이요 삽입한 결과 값들 가로 검색 어떻게 해야하나요?... [5] 바이블 2017.06.18 2327
9882 테이블간 유사도 확인이 가능할까요. [1] 뽀구 2017.06.16 2664
9881 독일 숫자 문자열 변환 문의 드립니다. 김민규_279160 2017.06.15 3374
9880 급!! 컬럼암호화,ㅠㅠ서버 재설치후 SQL 서버 버전 업그레이드 ,비대칭키,대칭키 문제.. [1] 획~~ 2017.06.15 4181
9879 Database file Shrink [1] HoyaSoft 2017.06.15 3622
9878 varbinary 타입을 텍스트 파일로 저장하려는데 안됩니다. [1] 청소부 2017.06.15 3612
9877 DB고수님들께 질문 있습니다.(간단한듯 어려운!) [2] 무마뭉 2017.06.14 3132
9876 Exerd 에서 엑셀로 import [1] 잭키올 2017.06.14 3755
9875 if 문에서 순차적 실행 GO 대신 쓸수 있는게 머가 있을까요? [2] neiyan 2017.06.13 2728
» row_number 에서 case 질의 입니다. [4] 호짱 2017.06.13 3181
9873 SQL문의 성능향상에 관한 질문 [1] niceman5 2017.06.13 3132
9872 QUERY 부탁드리겠습니다. [2] 호짱 2017.06.13 2885
9871 group by 쿼리 질문 드려요. [2] 솔총이 2017.06.12 2076
9870 MMC가 다음과 같은 오류창을 띄웁니다 영원히학생 2017.06.12 4676
9869 join문 조건 질문 드립니다 [2] 식뽕 2017.06.09 2109
9868 랜덤 게시판 페이징 기능 [2] 무마뭉 2017.06.08 1895
9867 csv 문의 드립니다. [1] goblin 2017.06.06 2231





XE Login