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

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

MSSQL 에서 PIVOT 쿼리를 실행 중에 속도의 문제가 있어서 질문 드립니다.

1. 4,270,400개 행의 테이블(A)를 PIVOT 쿼리를 실행하여 27,200행으로 전환했습니다.

 - PIVOT되는 행에 비클러스형 포괄인덱스를 걸었습니다. (SELECT 되는 행을 포괄함)

CREATE NONCLUSTERED INDEX [A_inc] ON [dbo].[A]
([C_ID] ASC)
INCLUDE([V_ID],[M_IDs],[MY_ID])

 

쿼리

SELECT *                                        
FROM (                                                                
        SELECT C_ID
            , M_IDs
            , MY_ID
            , V_ID
        FROM A

        WHERE C_ID = 1   --(4,270,400개 행)

        ) T
PIVOT (
        MAX(V_ID) FOR MY_ID IN (  [1] ... [160]  ) AS PVT

 

결과 행 27,200

C_ID    M_IDs    1    2    3    4    5    6    7    8    9    10   ...  160
1        M004    A     B    C    D   E    F    H    T   E    NULL ...  P
1        M012    A     B    C    D   E    K    Y    R   M    O    ... NULL

 

속도가 느려서 튜닝이 가능한지 알고 싶습니다.

20초 가량 걸리는데 1초 정도로 줄이고 싶습니다.

 

2. 현재는 PIVOT될 행을 문자열로 통일했습니다.

하지만 행이 여러 타입일 경우 타입을 그대로 가져와서 PIVOT 하는 방법이 없을까요?

No. Subject Author Date Views
» MSSQL PIVOT 질문 입니다. 우롱 2021.01.13 26
10680 DB 락 질문입니다. [2] 희망나라 2021.01.07 56
10679 HAVING절에 ANY나SOME이나ALL을 쓸수가있나요 ? [1] 흑곰 2021.01.04 55
10678 파라미터 조건에 따라서 조인문을 분깃해주고 싶은데요... [1] 아싸라비아콜롬비아 2021.01.02 171
10677 [질문] 쿼리 작성 중인데..막히는 부분이 있습니다..도움 좀 주세요.. BusyRun 2020.12.26 417
10676 외부 조인 연산자 ("*=" 또는 "=*") 문의 [1] 완전초짜 2020.12.25 74
10675 view를 주기적으로 recompile해야 정상작동합니다. [1] 꼬까 2020.12.16 228
10674 쿼리 질문 드립니다. [1] 청주아범 2020.12.14 139
10673 LINKED DB, WHERE 절 문의 드립니다.. 사히스 2020.12.09 114
10672 mssql sa비밀번호가 계속 바뀌는 문제에 대한 질문입니다. [1] qlalfdlqslek 2020.12.08 118
10671 검색 데이터 중 없는 데이터 찾기(?) 도와주실분 ㅠ [2] yong s ql을 잘하고싶다 2020.12.08 231
10670 IP 대역 비교하는 방법 [1] Mikha 2020.12.04 188
10669 SQL Server 인증을 통합 인증으로 [1] Mikha 2020.11.26 187
10668 SQL 2000버전을 2016으로 버전업할때 비밀번호 컬럼의 값 변경에 대해서 iticdl 2020.11.20 1246
10667 sql 2014 쿼리 문의 입니다. [1] 민성 2020.11.18 1012
10666 쿼리문 질문 드립니다. [1] One이 2020.11.18 293
10665 SQL2000 -> SQL2019 질문드립니다 [5] 구티 2020.11.17 511
10664 혹시 오라클에서 mssql로 변환할때요 [1] 아싸라비아콜롬비아 2020.11.16 261
10663 sql 쿼리 관련 질문 드립니다. [3] 코딩왕김탁구 2020.11.15 295
10662 일반 문자열을 utf-8 문자열로 변환 함수가 있을까요? [1] 강구다.. 2020.11.13 235





XE Login