//MSSQL STUFF 함수와 FOR XML PATH 를 이용하여 여러 ROW 의 값을 하나의 ROW 로 합치기

STUFF 함수 SUTFF 함수는 문자열에서 특정 시작 위치에서 지정된 길이만큼 문자를 반환하여 값을 생성해준다. SELECT STUFF('ABCDEFGH', 1, 1, '') -- 1부터 1+1까지 값을 지운다는 의미 -- 결과 -- BCDEFGH SELECT STUFF('ABCDEFGH', 2, 3, '') -- 2부터 2+3까지 값을 지운다는 의미 -- 결과 -- AEFGH SELECT STUFF('ABCDEFGH', 2, 3, 'XYZ') -- 2부터 2+3까지 값을 지우고 그 위치에 XYZ 를 넣는다는 의미 -- 결과 -- AXYZEFGH FOR XML PATH FOR XML PATH 기능은 여러 ROW 의 값을 하나의 ROW 로 합치는 기능을 한다. - ORDER BY 를 이용하면 ORDER ..

프로그래밍/MSSQL - 일반 | 2017. 12. 29. 22:04

//MSSQL 결과 창 표시(Ctrl + R)

프로젝트를 시작하는 단계에서 SSMS 를 설치하고 나니 갑자기 잘만 되던 결과창 표시 단축키가 먹히질 않았다. 난감하여 구글링으로 검색하여 해결 하였으나 다른 팀원을 바로 도와주지 못했다. 해결방법 1.도구 > 옵션 > 키보드 2. 다음 문자열을 포함하는 명령 표시 - [결과창] 검색 3. 새 바로가기 사용 위치 - [SQL 쿼리 편집기] 선택 4. 바로 가기 키 누르기 - [Ctrl+R] 누름 5. 할당 - 선택

프로그래밍/MSSQL - 팁 | 2017. 12. 29. 05:28

//MSSQL 배치 리스트

MSSQL 에서 흔히 사용하는 배치(작업) 리스트를 만들고 정리하자. 업무 속도 및 정리를 위해서 당연히 해야할 리스트 작성이다.

프로그래밍/MSSQL - 일반 | 2017. 12. 13. 00:52

//MSSQL Excel 데이터 마이그레이션

= "SELECT " & IF(OR( A2 = "GETDATE()", A2 = "NULL"), A2, "'" & A2 & "'") & " AS [" & $A$1 & "], " & IF(OR( B2 = "GETDATE()", B2 = "NULL"), B2, "'" & B2 & "'") & " AS [" & $B$1 & "], " & IF(OR( C2 = "GETDATE()", C2 = "NULL"), C2, "'" & C2 & "'") & " AS [" & $C$1 & "], " & IF(OR( D2 = "GETDATE()", D2 = "NULL"), D2, "'" & D2 & "'") & " AS [" & $D$1 & "], " & IF(OR( E2 = "GETDATE()", E2 = "NULL"), E..

프로그래밍/MSSQL - 팁 | 2017. 12. 10. 15:54

MSSQL 재귀 쿼리 - Line 별 Item 우선순위에 따른 Capa 제약 반영

USE T3_STAGING_HQC CREATE TABLE TEST_CO_SO ( ITEM_CD NVARCHAR(50) , SO_QTY INT , PRIORITY INT ) CREATE TABLE TEST_CO_LINE_MST ( LINE_CD NVARCHAR(50) , ITEM_CD NVARCHAR(50) , CAPA_QTY INT , PRIORITY INT ) /* 최대값을 구하는 함수 */ CREATE FUNCTION FN_GREATEST (@pVALUE1 NVARCHAR(255), @pVALUE2 NVARCHAR(255)) RETURNS NVARCHAR(255) AS BEGIN DECLARE @sRTN NVARCHAR(255) SET @sRTN = '' IF LTRIM(RTRIM(@pVALUE1))..

프로그래밍/MSSQL - 기초 | 2017. 6. 28. 21:40