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

덕분에 프로시저의 소스가 될 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
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 42817
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 22719
7363 테이터에 구분값이 포함되어있는경우 select해오는방법이요? [4] 클리티에 2013.11.21 5044
7362 DB서버가 갑자기 느려지는데 원인을 모르겠습니다(2) [2] 토토로 2013.11.21 7710
7361 간밤에 창고정보가 변경되었는데 원인을 찾을 수 있을까요? [5] Larry 2013.11.21 5323
7360 쿼리스트링 varchar(8000) 변수가 8000byte를 넘어갈때 해결방법좀 문의드립니다. [2] 사랑하면빨어 2013.11.21 5845
7359 oralce 11g를 sql server 2008 로 마이그레이션하기. [2] SQL은힘들다 2013.11.21 5244
7358 union 과 order by 질문입니다. 도와주세요. [7] 생각찾기 2013.11.20 4092
7357 UPDATE OPENQUERY 문의입니다. [2] 착한이 2013.11.20 5536
7356 Full table scan 을 하지 않는 방법! [1] tyzm 2013.11.20 4011
7355 라이센스 변경 문의 [1] 석호 2013.11.19 10572
7354 max server memory 설정 문의 [1] 토토로 2013.11.19 4017
7353 이전 기간 데이타 조회 [3] 냥냥 2013.11.19 3473
7352 DB서버가 갑자기 느려지는데 원인을 모르겠습니다 [1] 토토로 2013.11.18 8236
7351 테이블의 값을 가져와 횡으로 출력하는 프로시저를 작성하려고 합니다. [9] 하이페츠 2013.11.18 5508
» 테이블 내용 중 특정 데이터만 unpivot하는 방법 [2] 하이페츠 2013.11.18 4463
7349 다른 로그인으로 같은 SP 실행 시 실행시간 차이 [7] 디비러 2013.11.18 3725
7348 혹시 외부 clr을 사용해보신분 계신가요? [5] 군고구마 2013.11.17 5661
7347 mssql 테이블과 테이블을 비교해서 없는내용만 지울수없을가요? [4] 서달달 2013.11.17 7802
7346 지역변수에서 nvarchar(max) 이상사용하려면 어떻게 해야하나요? [2] slgi 2013.11.16 13256
7345 [DB] 데이타 센터에서 다른 데이터 센터로 [2] 송동운 2013.11.16 3457
7344 데드락 및 traceon 관련 질문 입니다. [1] 디비러 2013.11.15 4362





XE Login