본문 바로가기
반응형

데이터베이스6

[DB] 인덱스란? 1. 인덱스란? 데이터 행의 검색 속도를 향상시키기 위해서 사용되는 데이터베이스 객체다 인덱스는 테이블과 독립적으로 존재한다 2. 인덱스가 왜 필요할까? Full Table Scan 대용량 데이터에 조회 비효율적이다. Index Range scan 인덱스 설정 할 시에 조회 성능이 좋아진다 10만건 기준 5.62s -> 0.01s 3. 인덱스의 구조와 원리 B+-Tree 인덱스 구조를 가진다. 4. 인덱스를 언제 쓰는 게 좋을까? where 절이나 조인조건에 자주 사용되는 경우 컬럼이 매우 다양한 값을 포함하고 있는 경우 (남녀 이런건 별로) 데이터가 아주 많은 테이블을 대상으로 조회작업을 했을 때 대부분의 조회작업에서= 검색되는 행이 전체 데이터의 10%미만인 경우 인덱스 생성이 필요하지 않는 경우 테.. 2021. 9. 5.
[Oracle] ORA-28002: the password will expire within 7 days 오라클은 계정을 생성하면 패스워드 유효기간이 180일이다 패스워드 만료기간을 확인하고 비밀번호 변경기한을 무제한으로 바꾸는 작업을 하겠다 -- 패스워드 만료기간 확인하기 select *from dba_profiles; -- PASSWORD_LIFE_TIME 180으로 설정되어 있다 -- 무제한 unlimited로 변경하기 alter profile default limit PASSWORD_LIFE_TIME UNLIMITED; 2020. 12. 19.
[DB][Oracle] DBMS_LOB 함수 성능테스트 [DB][Oracle] 오라클 DBMS_LOB 함수 성능테스트 /* LOB인 데이터를 가져올 때 사용하는 방식 */ SELECT DBMS_LOB.SUBSTR(WORK_PLAN, DBMS_LOB.GETLENGTH(WORK_PALN)) AS WORK_PLAN FROM COLUMN_A 오라클에서 함수를 사용하지 않고도 조회가 가능한데 이런식으로 한 이유는 잘 모르겠다 (성능이 더 좋은가?...) stackoverflow에서 DBMS_LOB.GETLENGTH의 경우 BLOB 데이터 타입에 사용하면 기존 length함수가 number of character를 return 하는 것과는 달리 btye length를 return 한다고 한다. 성능 테스트 SELECT DBMS_LOB.SUBSTR(WORK_PLAN, D.. 2020. 11. 18.
[SQL][Oracle] 조인이란? 조인 한 개 이상의 테이블을 사용해서 데이터를 획득해야할 때 사용된다 데이터베이스 정규화 작업을 통해서 정보들이 여러개의 테이블로 나누어서 저장/관리되기때문에 조인 작업을 SQL의 select작업에서 필수적인 기술이다. 조인을 사용하면 한번에 여러 테이블에서 데이터를 조회할 수 있다. 작성방법 SELECT table1.column, table2.column, : table1과 table2에 있는 데이터를 조회할 수 있다. FROM TABLE1, TABLE2 : 획득할 데이터가 포함된 테이블을 조인시킨다. WHERE table1.column1 = table2.column2 : 조인된 행들중에서 유효한 행만 필터링하기 위한 조건식 from 절에 조인할 테이블을 정의하면, table1의 모든 행과 table2.. 2020. 11. 8.
[SQL] [oracle] 오라클 내장함수 오라클 내장함수 SQL 작성이 사용할 수 있는 유용한 기능이 제공되는 함수 *DBMS 제품마다 조금씩 차이가 있다. 종류 단일행 함수 조회된 행마다 하나의 결과를 반환한다 종류 문자함수 : 문자를 입력값으로 받아서 계산한 결과를 반환 숫자함수 : 숫자를 입력값으로 받아서 계산한 결과를 반환 날짜함수 : Date 타입의 값에 대한 처리를 수행 변환함수 : 데이터의 타입을 변환하는 처리를 수행 기타함수 : nvl, case, decode 등의 함수가 있다. 다중행 함수(그룹함수) 조회된 행을 그룹으로 묶고 행 그룹당 하나의 결과를 반환한다 group by 절을 사용해서 조회된 행을 그룹으로 묶고 다중행 함수로 각 그룹당 하나의 결과(합계 , 평균, 분산, 표준편차, 최고값, 최저값) 등을 계산해낸다. 다중행.. 2020. 11. 8.
[DB] [Oracle] 오라클 데이터 타입 오라클의 데이터타입 VARCHAR2(size) 가변길이 문자 데이터 최대값: 4000 byte size 범위내에서 실제 데이터의 크기만큼만 저장공간을 사용한다. 예) 이름, 주소, 과목명, 상품명, 뉴스제목 [ 길이들이 매번 달라질 수 있다 ] CHAR(size) 고정길이 문자 데이터 : 2000 byte size크기만큼의 저장공간을 무조건 사용한다. 예) 주민번호, 학번, 수강과목코드, LONG 가변길이 대용량 문자 데이터, 최대값 : 2GB 현재는 잘 사용되지 않음 테이블당 하나 밖에 사용할 수 없다. 제약조건을 정의할 수 없다. order by 나 group by에 포함시킬 수 없다. CLOB ( Character Large OBject) 가변길이 대용량 문자 데이터, 최대값: 4GB 예) 블로그의.. 2020. 11. 8.
반응형