본문 바로가기

Oracle5

[쿼리 튜닝] 계획 설명(Execution plan) 확인하기 어제 내가 만든 부분을 실서버에서 테스트해봤는데 속도가 좀 느린 것 같았다. 해당 서버가 원래 대량 데이터 처리속도가 느리고 데이터가 많아서 그런 거일 수도 있었지만 그래도 쿼리 튜닝을 해봐야겠다고 생각해서 다른 개발자분께 여쭤도 보고 혼자 공부했다. 기존 쿼리도 괜찮긴 하지만 몇 가지 수정이 필요하다고 하시면서 "계획 설명"에 대해서도 알려주시고, 쿼리도 짜주셨다ㅠㅠ 기존과 수정된 쿼리를 혼자 비교하면서 계획 설명도 보면서 공부했다. 계획 설명(단축키 : F10)에서는 옵티마이저가 어떤 방식으로 쿼리를 실행시키는지를 알 수 있다. 테이블명도 나오기 때문에 어느 위치에서 어떻게 실행되는지 한 눈에 보기 편하다. 나는 속도를 위해 쿼리튜닝을 하는 중이었으므로 스캔방식, cardinality에 중점을 두고 .. 2022. 8. 27.
[Oracle] 단일행함수 단일행함수 : 각 행마다 반복적으로 적용되어 입력받은 행의 개수만큼 결과를 반환하는 함수 문자 함수 : LENGTH, LENGTHB, SUBSTR, UPPER, LOWER, INSTR, LPAD, RPAD, LTRIM, RTRIM, REPLACE 1. LENGTH (문자 | 컬럼명) : 주어진 컬럼 값/문자열의 길이(문자 개수) 반환 1-1. LENGTHB (문자열 | 컬럼명) : 주어진 컬럼 값/문자열의 길이 (BYTE) 반환 한글일 경우 한 글자당 3byte 저장된다. 영어는 LENGTH와 LENGTHB 결과값의 차이가 없다. 2. UPPER / LOWER (문자열 | 컬럼명) : 입력값을 전부 대문자/ 대문자로 바꾼다. 3. INITCAP (문자열 | 컬럼명) : 입력값에서 앞글자만 대문자로 바꿔준.. 2021. 6. 23.
[Oracle] SELECT문 SELECT문 기본 DQL(Data Query Language)은 데이터를 검색 추출하기 위해 사용하는 언어이다. DQL은 DML에 속한언어이기도 하다. SELECT 컬럼명 [,컬럼명, ...] FROM 테이블명 WHERE 조건 ORDER BY 컬럼명; WHERE과 ORDER BY는 생략가능하다. SELECT문 사용 EMPLOYEE계정에 있는 EMPLOYEE테이블에서 SELECT를 이용하여 원하는 컬럼 및 행을 조회할 것이다. 1. EMPLOYEE테이블에서 원하는 컬럼 조회 - EMP_ID(사원번호) , EMP_NAME(사원명) 조회 SELECT EMP_ID ,EMP_NAME FROM EMPLOYEE; 2. 원하는 행 조회 SELECT * : 모든 행 조회 SELECT * FROM EMPLOYEE WHE.. 2021. 6. 19.
[Oracle] DML, DDL, TCL 이란? DML (데이터 조작어) 사원정보 데이터베이스에서 A사원의 연봉협상에 성공하여 연봉이 바뀌었다면 데이터베이스 내용도 바꿔줘야 할 것이다. 원하는 정보를 조회하고 수정할 때 사용하는 것이 DML이므로 테이블의 구조가 아닌 테이블안에 있는 데이터를 변경한다. DML 명령에 의한 변경은 데이터베이스에 영구적이지 않으므로 롤백할 수 있다. 명령어 종류 명령어 설명 DML(데이터조작어) SELECT 데이터베이스에 들어있는 데이터를 조회하거나 검색하기 위한 명령어. DQL(데이터질의어)로 볼 수도 있다. INSERT 데이터의 내용을 추가한다.(즉 행을 추가한다.) UPDATE 테이블 내의 기존 데이터 수정 DELETE 테이블에서 데이터를 삭제(행만 삭제, 전체 삭제도 가능) DDL (데이터 정의어) 만약 내가 사원.. 2021. 6. 17.
[Oracle] cmd에서 sqlplus사용 / sql devleper와 비교 0. sys as sysdba, system 접속 오라클의 관리자 계정으로는 sys와 system이 있다. 아래에서 HR계정으로 접속하기 위해서 system계정으로 먼저 로그인하였었다. cmd창에서는 system계정으로 비밀번호입력하고 로그인을 해서 새로운 계정을 생성하고 권한을 줬는데 conn sys/system비밀번호; --> 내 비밀번호는 oracle이 아니어서 오류를 냈다,,,ㅎㅎ 처음에는 저게 비밀번호인지 몰랐다ㅠㅠㅠㅠ sql developer에서는 sys as sysdba의 워크시트로 들어가서 새로운 계정을 생성하고 권한을 줬다. 0-1. sys / system 차이 okky에서 질문하신 분이 있어서 답을 보니 sys는 신이고 system은 관리자 정도라고 한다ㅋㅋㅋ 구분 공통점 차이점 sys.. 2021. 6. 17.