본문 바로가기
반응형

개발132

[mssql] 오라클 사용자를 위한 MSSQL 함수 오라클만 사용한 개발자가 MSSQL에서 쿼리를 작성할 경우 오라클에서 유용하게 사용한 함수가 없어서 MSSQL 문법에 맞는 함수 또는 형식으로 함수를 생성하여 사용할 경우 시간이 허비 되는 경우가 많다. 아래 함수를 MSSQL에 만들어두면 좀 더 편하게 쿼리를 작성할 수 있다. --================================================== -- 오라클 add_months를 mssql에서 사용하기 위한 함수 --================================================== CREATE FUNCTION [dbo].[ADD_MONTHS] ( @date datetime , @m INTEGER ) RETURNS datetime AS BEGIN retur.. 2021. 1. 17.
[oracle] 오라클 플래시백 쿼리 flashback query AS OF TIMESTAMP 오라클에서 데이터를 삭제/수정했을 경우, 이전 데이터 조회 현재 시간은 SYSDATE, 하루전은 SYSDATE-1 한시간전 데이터 SELECT * FROM TABLE_NAME AS OF TIMESTAMP(SYSDATE-(1/24)); -- 한시간전 데이터 조회 10분 전 데이터 SELECT * FROM TABLE_NAME AS OF TIMESTAMP(SYSDATE-(1/24)/6); -- 10분 전 데이터 조회 1분 전 데이터 SELECT * FROM TABLE_NAME AS OF TIMESTAMP(SYSDATE-(1/24)/60); -- 1분 전 데이터 조회 특정 날짜/시간 조회 SELECT * FROM TABLE_NAME AS OF TIMESTAMP(TO_DATE('20190906140000', 'Y.. 2021. 1. 17.
[oracle] 오라클 plsql loop sample oracle plsql loop sample DECLARE V_CNT INTEGER; CURSOR C1 IS SELECT LEVEL AS LVL, LEVEL * LEVEL AS LVL2 FROM DUAL CONNECT BY LEVEL < 21; L2 C1%ROWTYPE; BEGIN DBMS_OUTPUT.ENABLE; DBMS_OUTPUT.PUT_LINE('LOOP1'); V_CNT := 0; DBMS_OUTPUT.PUT_LINE('V_CNT : ' || V_CNT); LOOP V_CNT := V_CNT + 1; DBMS_OUTPUT.PUT_LINE('V_CNT : ' || V_CNT); IF V_CNT = 5 THEN EXIT; END IF; END LOOP; DBMS_OUTPUT.PUT_LINE('LO.. 2021. 1. 17.
[oracle] 오라클 날짜, 숫자를 원하는 포맷 문자열로 변환 to_char 함수명 : TO_CHAR 1. 숫자를 원하는 포맷의 문자열로 변환 : 첫번째 인자로 숫자를 넣고 두번째 인자로 형식을 지정 두번째 인자값에 대한 설명 9 : 숫자지만, 빈자리를 공백으로 채움. 0 : 숫자지만, 빈자리를 0으로 채움. , : 천단위의 콤마 (외국의 경우 소수점 일 수 있음.) . : 소숫점 (외국의 경우 천단위를 나타낼 수 있음.) 테스트 SELECT TO_CHAR(123456,'999,999,999,999') FROM DUAL -> 123,456 SELECT TO_CHAR(12345, '00000000') FROM DUAL -> 00012345 2. 날짜를 원하는 포맷의 문자열로 변환 : 첫번째 인자로 날짜를 넣고, 두번째 인자로 형식을 지정 YYYY 년 MM 월 DD 일 HH 시간(1.. 2021. 1. 17.
[oracle] 오라클 merge into select와 동시에 insert 또는 update를 수행하는 merge into 쿼리 예제 테이블명 : TB_BOARD merge into TB_BOARD AS A using (select id, name, desc from TB_BOARD) B -- select 쿼리는 다른 테이블과 join도 가능 on (A.id = B.id) when matched then --id가 같은 데이터라면.. --update 문을 수행해보자 uppdate set name = '' when not matched then --id가 같은게 없다면... --insert 문을 수행해보자 insert (id, name, desc) values ('99', 'park', 'this is desc'); 2021. 1. 17.
[oracle] 오라클 에러코드 oracle error code list ORA-0000: normal, successful completion ORA-00001: unique constraint (.) violated ORA-00017: session requested to set trace event ORA-00018: maximum number of sessions exceeded ORA-00019: maximum number of session licenses exceeded ORA-00020: maximum number of processes () exceeded ORA-00021: session attached to some other process; cannot switch session ORA-00022: invalid session ID; access deni.. 2021. 1. 17.
반응형