전체 글(60)
-
ORACLE Tips
[ 테이블 컬럼정보 ] SHOW FULL COLUMNS FROM TABLE_NAME
2022.02.15 -
DISTINCT vs GROUP BY
[ DISTINCT vs GROUP BY ] 단순그룹핑 vs 그룹핑 + 정렬 정렬 작업이 필요 없을 경우 DISTINCT 를 사용하는 것이 성능상 좋다. DISTINCT 는 집계 함수가 필요한 경우에는 단순 그룹핑이더라도 GROUP BY 를 사용해야 한다.
2022.02.15 -
$.extend()
오브젝트를 합칠 때 사용하는 함수. netUtil.js 파일에서 공통으로 사용했었다. jQuery.extend(true, a, b) ( = $.extend(true, a, b)) - 복수의 오브젝트를 합쳐주는 함수 - a 에 b 를 합친다. 첫번째 인자값으로 true/false 여부는 a 오브젝트에 b 오브젝트 합칠 시 덮어쓰기 여부이다. true 이면, a 오브젝트를 없애지 않고 Union All
2022.02.15 -
[ PIVOT ] 행을 열로 바꾸기
프로젝트 시, 조회기간 일자별 통계 데이터 추출할 때 사용했었다. [ PIVOT ] SELECT * FROM ( PIVOT 대상 쿼리문 ) AS A PIVOT ( 그룹함수(기준컬럼) FOR 대상컬럼 IN ([],[]...) AS B [ UNPIVOT ] WITH [PIVOT_TABLE] AS ( SELECT... ) SELECT [컬럼] FROM PIVOT_TABLE UNPIVOT ( [컬럼] FROM [기준컬럼] IN ([컬럼]...)) AS [PIVOT명] ex) DECLARE @SQL NVARCHAR(MAX) = '' ,@SQL1 NVARCHAR(MAX) = '' SELECT @SQL = @SQL + '[' + CONVERT(VARCHAR, A.CDATE+A.ADDNUM) + '],', @SQL1 ..
2022.02.15 -
[ STUFF / FOR XML PATH ] 여러행 하나의 행으로 합치는 방법
[ STUFF ] - 문자열의 위치와 길이를 지정하여 다른 문자로 치환하는 함수. - 예시 : STUFF([문자열], [위치], [길이], [치환할 문자]) [ FOR XML PATH ] - 쿼리의 실행결과 데이터를 XML 형식으로 표현 - 예시 : FOR XML PATH([row element명]) ex) CASE WHEN COUNT(*) > 1 THEN STUFF( ( CASE WHEN * 'S' THEN ( SELECT (CASE WHEN *='S' THEN ',Q' ELSE ',' END) + * FROM ( SELECT CONCAT(*,'~',*) AS * , * FROM ( SELECT MIN(*) AS * , MAX(*) AS * , MAX(*) AS * FROM ( SELECT * , * ..
2022.02.15 -
CURSOR
[ 커서(CURSOR ) 반복문 구문 ] DECLARE @C_A VARCHAR(10) , @C_B VARCHAR(10) , @C_C VARCHAR(10) DECLARE RTN_CURSOR CURSOR FOR SELECT A, B, C FROM TABLE OPEN RTN_CURSOR WHILE( 1 = 1 ) BEGIN FETCH NEXT FROM RTN_CURSOR INTO @C_A, @C_B, @C_C IF ( @@FETCH_STATUS 0 ) BREAK; 로직 END CLOSE RTN_CURSOR DEALLOCATE RTN_CURSOR [ CURSOR 반복문에서 특정조건 시 로직 건너뛰게 하려면 GOTO 이용하면 된다. ] - IF 특정조건 BEGIN GOTO POINT_A (아무거나 상관없음) EN..
2022.02.15