이미지20

Coding Story/DATABASE

    반응형
    이미지21

    [ Database ] SQLD DB 계층형 질의

    계층형 질의란 말 그대로 계층형 데이터를 다루는 쿼리를 수행하는 것이다. ​ 그럼 계층형 데이터란 무엇일까? ​ ​ 계층형 데이터란 동일한 테이블에 계층적으로 상위와 하위 데이터가 포함되어진 데이터들을 말한다. 예를 들어 사원 테이블에는 사원들의 데이터가 있지만 분명 사원마다 직급이 있거나 관리자(직속상관)이 있기 마련이다. ​ ​ 먼저, 계층형 질의에 대해 알아보기 앞서 아래의 용어를 숙지하자. ​루트 노드 ( 루트 데이터 ) : 가장 최상위의 데이터 리프 노드 ( 리프 데이터 ) : 가장 최하위의 데이터 데이터를 전개하다 : 데이터를 찾아나가다 본론으로 들어가 아래와 같은 사원 테이블이 있다고 가정해보자. 사원 테이블을 보면 '진남'이 관리하는 사원은 '진홍'이며, '진홍'은 '동현'을, '동현'은 ..

    이미지21

    [ Database ] SQLD Null 과 Default

    SQLD 자격증을 공부하다 생각도 못 한 부분에서 해메여서 다시 되짚어 보고자 한다. ​ 공부하다 헷갈렸던 부분은 다름 아닌 Null 에 대해서였다. ​ Null 의 뜻을 아무것도 없는 상태 또는 아무것도 없는 값으로 알고 있었다. ​ 그러다 이게 틀린 정보라는걸 이제서야 알았다. ​ 이번을 계기로 제대로 Null 을 박살내보자. 먼저 Null 과 0 과 ' '(공백) 은 어떤 차이가​ 있을까? ​ 우선 가장 본질적으로 차이점을 본다면 0 과 ' '(공백) 은 엄연히 유효한 데이터이다. ​ 이유는 0 은 숫자 데이터이며 ' '(공백) 은 문자 데이터이기 때문이다. ​ 그럼 Null 은? 앞에서 말했듯 Null 은 아무것도 없는 상태인줄 알았으나 그게 아니라 정의되지 않아 알 수 없는 데이터를 뜻하는 것이..

    이미지21

    [ Oracle ] 오라클 함수

    현 포스팅은 세세하게 함수에 대해 알아보기 보다 간단 요약해 참고하기위한 포스팅임. 함수란? "어떤 입력값을 받아서 정해진 루틴에 의해 작업을 하고 결과값을 만들어서 출력해주는 것" 함수는 여러 건의 데이터를 한 번에 하나씩만 처리하는 단일행 함수​와 여러 건의 데이터를 동시에 입력받아 결과값 한 건을 만들어주는 복수행 함수가 있다. 단일행 함수는 숫자 함수, 문자처리 함수, 날짜 함수, 형변환 함수 등이 있다. 단일행 함수에 대해 먼저 살펴보자. 1. 단일행 함수 - 숫자 함수 ABS 절대 값을 구하는 함수 ( 방향은 없고 크기만 있는 것 ) //return 10 SELECT ABS(-10) FROM DUAL; //return 15 SELECT ABS(0015) FROM DUAL; ​ FLOOR 소수점..

    이미지21

    [ Database ] 인덱스 Index

    인덱스란? 그냥 단순히 생각하면 검색을 빠르게 하기 위한 자료구조이다. 보통 기본키가 자동으로 인덱스 설정되는데 데이터가 반드시 정렬이 되있어야 한다. 인덱스의 장점 검색할 때 인덱스를 기준으로 바로 찾아나가기 때문에 검색 속도가 빨라진다. 시스템에 걸리는 부하를 줄여 시스템 전체 성능을 향상시킨다. 인덱스의 단점 인덱스를 생성하는데 시간과 공간이 소요된다. 데이터 변경작업(INSERT, UPDATE, DELETE)이 자주 일어날 경우에는 오히려 성능이 저하된다. 그럼 인덱스 명령어들은 무엇이 있을까? 단일 인덱스 생성 CREATE INDEX 인덱스명 ON 테이블명 (컬럼명) 복합 인덱스 생성 CREATE INDEX 인덱스명 ON 테이블명 (컬럼명1, 컬럼명2...) 중복 불가능한 인덱스 생성 CREAT..

    이미지21

    [ Oracle ] SQL 서브쿼리 SELECT, FROM, WHERE

    서브쿼리란? - 하나의 쿼리 문장 내에 포함된 또 하나의 쿼리 문장. - 비교연산자의 오른쪽에 기술해야 하고 반드시 괄호 안에 넣어야 함. - 메인 쿼리가 실행되기 이전에 한 번만 실행됨. SQL의 기본 문법이자 가장 자주쓰이는 SELECT, WHERE, FROM. ​ 서브쿼리를 각각의 어느 위치에서 사용하냐에 따라 나누어진다. ​ 각각의 종류에 따라 살펴보자. SELECT 절 서브쿼리 ( 스칼라 서브쿼리 ) 스칼라 서브쿼리 ( Scalar Subqueries )​ 라고 불리며 SELECT 절 안에 서브쿼리가 들어있다. ​ 이 때, 서브쿼리의 결과는 반드시 단일 행이나 SUM, COUNT 등의 집계 함수를 거친 단일 값으로 리턴되어야 한다. ​ 이유는 서브쿼리를 끝마친 값하나를 메인쿼리에서 SELECT ..