본문 바로가기

Paul Work/Sql

READ() OVER(), 1. LEAD, OVER : 앞의 Row에서 한줄을 읽어 그값을 계산할때 사용하는 함수이다. LEAD(NU_AMT,1,0) OVER(ORDER BY NUM DESC) < AMT1 앞의 NU_AMT 컬럼의 값을 하나 가지고 오는 함수이다. 앞의 Row에서 현재 Row 값을 계산할때 유용하게 사용 OVER은 그안의 컬럼을 정력할때 사용 LEAD(컬럼명, 가져올 ROW, 정수나 실수 자리수) LEAD(NU_AMT,1,0) OVER(PARTITION BY PROJ_CODE, ORG_CODE, COST_ORG, ACCOUNT_CODE ORDER BY NUM DESC) 위와 같이 사용을 하면 PARTITION 다음에 오는 컬럼으로 그룹핑되어진다. 더보기
Excel에서 SQL Query 생성법 A2 B2 C2 D2 39926 70187 극동건설 1634 위와 같은 데이터가 있다면 E2 위치에 아래와 같은 SQL문을 붙여 넣어주고 colum과 table 명만 변경하여 주면 된다 E2에 있는 answkd ="update gb_haja_bond_temp set bond_no ='"&A2&"' , danji_id = '"&B2&"' , co_name = '"&C2&"' WHERE bond_id = '"&D2&"';" 결과물 UPDATE gb_haja_bond_temp SET bond_no ='39926' , danji_id = '70187' , co_name = '극동건설' WHERE bond_id = '1634'; 더보기
데이터 있는지 없는지에 따른 UPDATE, INSERT 처리 MERGE INTO 테이블명 USING ( 서브쿼리 및 데이터 ) ON( 비교 대상 ) WHEN MATCHED THEN 데이터가 맞츨때 처리할 것 SQL WHEN NOT MATCHED THEN 데이터가 틀렸을때 처리할 SQL 예제 1) //JSP 페이지에서 데이터를 가지고 와서 바로 처리할때 MERGE INTO ih_mw_gj USING ( DUAL ) ON( a.mw_id = ? and a.sisulmool_id = ? and a.s_gj_cd = ? ) WHEN NOT MATCHED THEN UPDATE SET date = ? WHERE mw_id = ? AND sisulmool_id = ? AND s_gj_cd = ? WHEN NOT MATCHED THEN INSERT( mw_gj_id, mw_id.. 더보기