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

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

답변 주신 건우아빠님께 감사드립니다.

덕분에 프로시저의 소스가 될 Customer_S 테이블을 만들 수 있게 되었습니다.

엑셀업로드 양식자체가 횡으로 되어 있습니다만 해당 내용을 각각 일자별로 수정할 수 있어야하고

해당 일자가 하루도 빠짐없이 매일 기록되어야 하기 때문에 업로드시 횡을 종으로 변경하여 디비화하고

해당 테이블을 프로시저를 통하여 날짜계산을 통해 다시 횡으로 보여주게 끔 구현하기 위해 본 질문을 드렸었습니다.

다시 한번 영감을 주신 건우아빠님께 감사의 말씀 전합니다. 


Day1Day2Day3Day4Day5Day6Day7Day8Day9Day10Day11Day12Day13Day14
21218819616092015644000000






안녕하세요. 프로시저를 짜기 위해서 노력해봤으나 내공이 부족하여 고민하던 차에 이렇게 SQLER에 질문을 드립니다.

간단히 설명드리자면 위와 같이 일자별 횡으로 데이터가 존재하는 테이블을 읽어들여

아래와 같이 일자별 데이터만 종으로 바꿔서 새 테이블에 저장하는 프로시저를 만들려고 합니다.



Day1    

212
Day2188
Day3196
Day4160
Day592
Day60
Day7156
Day844
Day90
Day100
Day110
Day120
Day130
Day14        0





이미지 301.png


기존에 존재하는 소스가 될 Customer_T 테이블입니다. 엑셀로 수시로 업로드 되는 테이블이구요.


DateCreated 컬럼의 값은 모든 ROW가 동일합니다. 즉 시작날짜는 모든 ROW가 동일합니다. 


엑셀 업로드 할때마다 데이터가 전부 지워지고 시작날짜는 변경되어 다른 데이터들이 업로드 됩니다.


위의 Customer_T 테이블에 엑셀 업로드된  데이터를 가지고 아래와 같은 Customer_S 테이블을 만드려고 합니다.



보시는 바와 같이 stock 컬럼까지는 반복되며 일자별만 종으로 바꾸는 거라 row수가 대단히 많아 지는 것이 정상입니다.

기존 테이블에 DateCreated 컬럼 값이 2013-03-05이면 아래 Customer_S 테이블은 2013-03-05일부터 +13일까지 총 2주간의

데이터가 생성되며 DateCreated 컬럼값이 2013-11-10이면 아래 Customer_S 테이블은 2013-11-10부터 총 +13일까지 2주간의

데이터가 업데이트 되게 해야 하는데요 감을 못잡겠습니다 ㅋ



CustomerOutTDayId CustomerNo DeliverNo PartNo Unit Stock DayQty DateCreated Flag DateCreated 설명
1 KO16000 KR16000A DW466 56 0 212 2013-03-05 1 시작날짜
1 KO16000 KR16000A DW466 56 0 188 2013-03-06 1 시작날짜 +1
1 KO16000 KR16000A DW466 56 0 196 2013-03-07 1 시작날짜 +2
1 KO16000 KR16000A DW466 56 0 160 2013-03-08 1 시작날짜 +3
1 KO16000 KR16000A DW466 56 0 92 2013-03-09 1 시작날짜 +4
1 KO16000 KR16000A DW466 56 0 0 2013-03-10 1 시작날짜 +5
1 KO16000 KR16000A DW466 56 0 156 2013-03-11 1 시작날짜 +6
1 KO16000 KR16000A DW466 56 0 44 2013-03-12 1 시작날짜 +7
1 KO16000 KR16000A DW466 56 0 0 2013-03-13 1 시작날짜 +8
1 KO16000 KR16000A DW466 56 0 0 2013-03-14 1 시작날짜 +9
1 KO16000 KR16000A DW466 56 0 0 2013-03-15 1 시작날짜 +10
1 KO16000 KR16000A DW466 56 0 0 2013-03-16 1 시작날짜 +11
1 KO16000 KR16000A DW466 56 0 0 2013-03-17 1 시작날짜 +12
1 KO16000 KR16000A DW466 56 0 0 2013-03-18 1 시작날짜 +13
2 KO16000 KR16000B DW484 42 0 236 2013-03-05 1 시작날짜
2 KO16000 KR16000B DW484 42 0 396 2013-03-06 1 시작날짜 +1
2 KO16000 KR16000B DW484 42 0 348 2013-03-07 1 시작날짜 +2
2 KO16000 KR16000B DW484 42 0 0 2013-03-08 1 시작날짜 +3
2 KO16000 KR16000B DW484 42 0 0 2013-03-09 1 시작날짜 +4
2 KO16000 KR16000B DW484 42 0 352 2013-03-10 1 시작날짜 +5
2 KO16000 KR16000B DW484 42 0 276 2013-03-11 1 시작날짜 +6
2 KO16000 KR16000B DW484 42 0 188 2013-03-12 1 시작날짜 +7
2 KO16000 KR16000B DW484 42 0 0 2013-03-13 1 시작날짜 +8
2 KO16000 KR16000B DW484 42 0 0 2013-03-14 1 시작날짜 +9
2 KO16000 KR16000B DW484 42 0 0 2013-03-15 1 시작날짜 +10
2 KO16000 KR16000B DW484 42 0 0 2013-03-16 1 시작날짜 +11
2 KO16000 KR16000B DW484 42 0 0 2013-03-17 1 시작날짜 +12
2 KO16000 KR16000B DW484 42 0 0 2013-03-18 1 시작날짜 +13
중략                
6 KO12000 KR12003A HD1076 99 3663 541 2013-03-05 1
6 KO12000 KR12003A HD1076 99 3663 694 2013-03-06 1
6 KO12000 KR12003A HD1076 99 3663 403 2013-03-07 1
6 KO12000 KR12003A HD1076 99 3663 956 2013-03-08 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-09 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-10 1
6 KO12000 KR12003A HD1076 99 3663 935 2013-03-11 1
6 KO12000 KR12003A HD1076 99 3663 1118 2013-03-12 1
6 KO12000 KR12003A HD1076 99 3663 618 2013-03-13 1
6 KO12000 KR12003A HD1076 99 3663 116 2013-03-14 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-15 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-16 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-17 1
6 KO12000 KR12003A HD1076 99 3663 0 2013-03-18 1





























No. Subject Author Date Views
7352 DB서버가 갑자기 느려지는데 원인을 모르겠습니다 [1] 토토로 2013.11.18 8054
7351 테이블의 값을 가져와 횡으로 출력하는 프로시저를 작성하려고 합니다. [9] 하이페츠 2013.11.18 5461
» 테이블 내용 중 특정 데이터만 unpivot하는 방법 [2] 하이페츠 2013.11.18 4389
7349 다른 로그인으로 같은 SP 실행 시 실행시간 차이 [7] 디비러 2013.11.18 3658
7348 혹시 외부 clr을 사용해보신분 계신가요? [5] 군고구마 2013.11.17 5508
7347 mssql 테이블과 테이블을 비교해서 없는내용만 지울수없을가요? [4] 서달달 2013.11.17 7739
7346 지역변수에서 nvarchar(max) 이상사용하려면 어떻게 해야하나요? [2] slgi 2013.11.16 12615
7345 [DB] 데이타 센터에서 다른 데이터 센터로 [2] 송동운 2013.11.16 3396
7344 데드락 및 traceon 관련 질문 입니다. [1] 디비러 2013.11.15 4295
7343 중첩 트랜젝션 에러처리 프로세스에 관하여 질문이 있습니다. [7] alima 2013.11.15 7180
7342 미러링 질문 드립니다. [1] 나는짱이야 2013.11.15 3722
7341 긴급질문입니다. 서버 리부팅 후 데이타베이스가 복구상태로 들어갔어요 [2] 정인화_307824 2013.11.15 7584
7340 SQLServer 질문사항입니다. [1] Runningman、 2013.11.14 3195
7339 mssql admin쪽 공부할려고하는데 책좀 추천해주세요 [2] 로쏘네리 2013.11.14 4046
7338 replication 궁금한 사항 문의드립니다. [2] 현석아빠 2013.11.14 3681
7337 mssql 2005 익스프레스 버전에서 2005스탠다드로 업그레이드 방법 문의드립니다. [6] 샤바랄라 2013.11.13 5580
7336 선배님들 error 로그에 대해서 질문이 있습니다. [2] alima 2013.11.13 3294
7335 간단한 실행계획 확인 중 궁금점 [9] Jaden 2013.11.12 4279
7334 트랜잭션 로그전달 계정 권한 이슈 - 로그쉬핑 (Log Shipping) [1] 우생 2013.11.12 8140
7333 SQL 관련 튜닝 [7] 냥냥 2013.11.12 4518





XE Login