본문 바로가기

Database36

[Oracle] delete, update후 복구 delete, update를 잘못한경우가 종종있다.(where절을 입력하지 않고 실행했다거나..) 그럴경우 아래 쿼리를 순서대로 실행해서 n분전의 테이블로 복구할수있다. SELECT * FROM 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '15' MINUTE); -- 15분전의 테이블 조회 -- delete전 DB 백업할것 DELETE 테이블명; -- 현재 테이블 내용 삭제 INSERT INTO 테이블명 SELECT * FROM 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '15' MINUTE); -- 15분전 테이블의 내용은 다시 삽입 commit; 2022. 4. 21.
[Oracle] 쿼리의 특정 범위만 조회 ( PAGE 조회) SELECT * FROM ( SELECT A.*, ROWNUM AS R FROM ( SELECT ( 쿼리 -- 해당부분에 실행할 쿼리를 입력한다. ) A WHERE ROWNUM = 1 위 쿼리를 이용해서 R부터 ROWNUM 사이의 값들만을 가져올수있다. 위 쿼리는 1 ~ 100행의 값들을 가져온다 R과 ROWNUM에 특정값을 더해서 사용자가 아래로 스크롤 했을때 101~200번째의 값을 추가로 가져오는 쿼리를 다시 실행해서 recyclerview에 추가하는 방법으로 사용할수있다. 2022. 3. 15.
[Oracle] 조회순서 매기는법 - ROWNUM 1. ROWNUM 키워드 이용하는 방법 - 조회된 순서되로 순번을 매긴다. SELECT ROWNUM , a.* FROM (조회할 테이블 or 쿼리) a - ORDER BY 를 사용하면 순번이 뒤섞이므로 정렬된 서브쿼리 결과에 ROWNUM 을 매겨야 한다. SELECT ROWNUM , x.* FROM ( SELECT a.* FROM emp a ORDER BY a.ename ) x 2. ROW_NUMBER() 함수를 사용하는 방법 - ORDER BY 된 결과에 순번을 매길때에는 ROWNUM 보다 ROW_NUMBER() 함수가 더 편하다. SELECT ROW_NUMBER() OVER(ORDER BY a.job, a.ename) row_num , a.* FROM emp a ORDER BY a.job, a.ena.. 2022. 3. 4.
[Oracle] ANSI JOIN - 정의 미국 국가표준 협회(American National Standards Institute, ANSI)는 미국에서 제품, 서비스, 과정, 시스템, 인력관리 분야에서 표준을 개발하는 것을 감독하는 비영리 민간 기구로서, 미국을 대표하여 국제 표준화 기구(ISO)에 가입하였다.[1] 이 협회는 미국의 제품이 전세계에서 사용될 수 있도록 미국의 표준을 국제표준에 맞추는 활동도 한다. 이 협회는 다른 표준화 기구나 정부 기관, 소비자 단체, 회사 등이 개발한 표준을 승인하기도 한다. 그럼으로써 용어를 통일하고, 제품의 특성, 성능, 테스트 방법 등에서 일관성을 유지한다. 이 협회는 제품이나 인력의 인증 기구가 국제표준에서 정의된 기준에 부합하는지에 대해 승인하기도 한다. 이 협회가 제정한 표준을 "ANSI.. 2022. 3. 3.