본문 바로가기
728x90

oracle38

[Oracle] WINDOW FUNCTION 윈도우 함수 WINDOW FUNCTION -- 윈도우 함수에는 OVER 문구가 필수 포함된다. SELECT * FROM SCOTT.EMP; SELECT * FROM SCOTT.DEPT; 그룹 내 순위 함수 1. RANK – 순위 구하기 SELECT JOB, ENAME, SAL, RANK() OVER (ORDER BY SAL DESC) ALL_RANK, RANK() OVER (PARTITION BY JOB ORDER BY SAL DESC) JOB_RANK FROM EMP; SELECT JOB, ENAME, SAL, RANK() OVER (ORDER BY SAL DESC) ALL_RANK FROM EMP; SELECT JOB, ENAME, SAL, RANK() OVER (PARTITION BY JOB ORDER BY S.. 2022. 6. 12.
[Oracle / MySQL] NULL 개념, 처리 ORACLE / MYSQL NULL 개념, 처리방법 -- MySQL 에서 NULL CREATE TABLE test_db.t1 (ID INT,C1 VARCHAR(10)); INSERT INTO test_db.t1 VALUES (1,1); INSERT INTO test_db.t1 VALUES (2,'2'); INSERT INTO test_db.t1 VALUES (3,NULL); INSERT INTO test_db.t1 VALUES (4,'4'); INSERT INTO test_db.t1 VALUES (5,''); INSERT INTO test_db.t1 VALUES (6,6); INSERT INTO test_db.t1 VALUES (7,' '); INSERT INTO test_db.t1 VALUES (8,'.. 2022. 6. 11.
[Oracle] Oracle Lock Test TX Lock Test (DML) 여러 세션이 동일 로우를 변경하는 경우(mode=6) 여러 세션이 Unique Key 충돌을 일으키는 경우(mode=4) 여러 세션이 비트맵 인덱스(Bitmap Index) 충돌을 일으키는 경우(mode=4) COMMANDS -- 현재 세션의 SESSION ID 확인 SELECT SID FROM V$SESSION WHERE USERNAME=USER; -- LOCK 걸린 SESSION 확인 SELECT D.OBJECT_NAME, L.SESSION_ID, S.SERIAL#, S.MACHINE, S.PROGRAM, S.LOGON_TIME FROM DBA_OBJECTS D, V$LOCKED_OBJECT L, V$SESSION S WHERE L.SESSION_ID = S.SID .. 2022. 6. 10.
[Oracle] HWM (High Water Mark) HWM HWM는 저장공간을 갖는 세그먼트 영역에서 사용한 적이 있는 Block과 사용한 적이 없는 Block 의 경계점이다. 사용된 적이 있는 Block까지의 표시점이라고 할 수 있다. 테이블에 데이터가 추가(Insert)될 때 세그먼트에는 할당된 블록의 집합인 익스텐트에 데이터를 적재하도록 오라클 데이터 블록 포맷을 수행한다. HWM은 이 포맷된 위치를 표시하는 역할을 한다. HWM의 특징은 다음과 같다. EXTENT 확장의 기준이며, 모든 세그먼트에 하나씩 존재 전체 테이블을 스캔(FULL SCAN)할 때 테이블의 첫 블록에서부터 HWM까지 스캔 HWM 아래로 FREE BLOCK이 많을 경우 효율은 저하 HWM 이전에 위치한 블록까지만 저장 가능 HWM은 테이블 익스텐트의 뒤로만 이동 가능(HWM B.. 2022. 6. 9.
[Oracle] PCTFREE, PCTUSED PCTFREE UPDATE할 때 늘어나는 데이터를 수용하기 위한 공간. 기존에 존재하던 ROW를 UPDATE하며 ROW DATA의 길이가 늘어날 것에 대비하기 위한 여유공간. PCTFREE 값이 적을 경우 한 데이터 블록에 많은 ROW DATA를 입력할 수 있다. UPDATE 작업량이 적은 세그먼트에 적합하다 너무 낮을 경우 헤더 데이터가 저장될 공간이 줄어들고, ROW MIGRATION 현상이 생길 수 있다. PCTFREE 값이 클 경우 한 데이터 블록에 적은 ROW DATA를 입력할 수 있다. (PCTFREE 값이 적을 경우와 비교해서, 같은 양의 ROW DATA를 입력하기 위해 더 많은 데이터 블록을 사용해야 한다.) UPDATE 작업이 많은 세그먼트에 적합하다. 실제 데이터가 저장될 영역이 줄어들.. 2022. 6. 9.
[Oracle] 사용자, 권한, 롤 사용자 사용자 생성 CREATE USER USER_NAME IDENTIFIED BY PASSWORD [DEFAULT TABLESPACE TABLESPACE_NAME] 사용자 정보 조회 SELECT * FROM ALL_USERS WHERE USERNAME = 'USER_NAME'; SELECT * FROM DBA_USERS WHERE USERNAME = 'USER_NAME'; SELECT * FROM DBA_OBJECTS WHERE USERNAME = 'USER_NAME'; 사용자 정보 변경 ALTER USER USER_NAME IDENTIFIED BY PASSWORD; 사용자 삭제 DROP USER USER_NAME [CASCADE]; CASCADE : 사용자와 객체 모두 삭제할 수 있다. 권한 시스템 .. 2022. 6. 8.
728x90