일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- ERD
- 빅데이터
- 환생
- where절
- 일기
- 도전
- 책리뷰
- Update
- ROWNUM
- 홈트
- 데이터모델링
- 30일글쓰기
- SQLD
- data
- constraint
- 회사싫어
- SQL
- 직장생활
- rename
- 전생
- Drop
- null
- 30일챌린지
- 회사생활
- 직장인일기
- 인덱스
- INSERT
- 테이블삭제
- 보울룸
- 넷플릭스
- Today
- Total
목록문송한 회사생활 (74)
최보름달

내장 함수 내장 함수는 벤더에서 제공하는, 데이터베이스를 설치하면 기본적으로 제공되는 함수를 말한다. 내장 함수는 다시 단일행 함수(single row function)과 다중행 함수(multi row function)으로 나눌 수 있다. 다중행 함수는 다시 집계 함수(aggregate function), 그룹 함수(group function), 윈도우 함수(window function)으로 나눌 수 있다. 함수는 입력되는 값이 아무리 많아도 출력은 하나만 된다는 M:1 관계라는 중요한 특징을 가지고 있다. 단일행 함수는 처리하는 데이터 형식에 따라서 문자형, 숫자형, 날짜형, 변환형, NULL 관련 함수로 나눌 수 있다. 단일행 함수의 종류 단일행 함수의 특징 SELECT, WHERE, ORDER BY..
ROWNUM (오라클)원하는 행 만큼 가져오고 싶을 때 where 절에서 행의 개수를 제한하는 목적으로 사용할 수 있다. 한 건의 행만 가져오고 싶을 때 -- 다 똑같은 결과가 나온다. SELECT PLAYER_NAME FROM PLAYER WHERE ROWNUM = 1; SELECT PLAYER_NAME FROM PLAYER WHERE ROWNUM
같지 않음을 표현하는 연산자 != ^= NOT 컬럼명 = ~보다 크지 않다. NOT 컬럼명 > A와 B 값 사이에 있지 않다. NOT BETWEEN A AND B list 값과 일치하지 않는다. NOT IN (list) NULL값을 갖지 않는다. IS NOT NULL 예시 -- 소속이 K02 인 선수 중에서 포지션이 MF가 아니고, 175 이상 185 이하가 아닌 선수를 찾아라 -- 이렇게 해도 되고 SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE TEAM_ID = 'K02' AND NOT POSITION = 'MF' AND NOT HEIGHT BETWEEN 175 AND 185 ; -- 이렇게 해도 된다. SE..
논리 연산자의 종류 연산자 의미 AND 앞에 있는 조건과 뒤에 오는 조건을 동시에 만족해야 한다. OR 앞뒤 조건 중 하나만 만족해도 된다. NOT 뒤에 오는 조건에 반대되는 결과를 돌려준다. 예시 -- 소속이 K02이고, 키가 170 이상인 선수를 찾아라. SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE TEAM_ID = 'K02' AND HEIGHT >= 170 ; -- 소속이 K02이거나 K07이고, 포지션이 MF인 선수를 찾아라 SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE TEAM_ID IN ('K02', K0..
SQL 연산자 SQL 연산자는 SQL 문장에서 사용하도록 기본적으로 예약되어 있는 연산자로, 모든 데이터 타입에 대해서 연산이 가능하다. SQL 연산자 종류 연산자 의미 BETWEEN A AND B A와 B의 값이 포함된 사이값 IN (list) 리스트에 있는 값 중에서 일치하는 값 LIKE '비교문자열' 비교 문자열과 형태가 일치하는 값 IS NULL NULL 값 BETWEEN A AND B -- 키가 170 이상, 180 이하인 선수 정보를 찾아라 SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE HEIGHT BETWEEN 170 AND 180 ; IN -- 팀 아이디가 K02, K07인 선수를 찾아라 SELE..

비교연산자 종류 예시 -- 소속팀이 'KO2'를 찾아라 SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE TEAM_ID = 'K02' ; TEAM_ID 의 데이터 타입이 CHAR(3) 이기 때문에 따옴표('') 나 큰따옴표("") 로 묶어서 처리해야 한다. 데이터 타입이 NUMERIC 과 같은 숫자 타입이라면 인용 부호를 사용하지 않는다. -- 키가 170 이상인 선수를 찾아라. SELECT PLAYER_NAME 선수이름, POSITION 포지션, BACK_NO 백넘버, HEIGHT 키 FROM PLAYER WHERE HEIGHT >= 170 ; kdata 한국데이터진흥원에서 출간한 SQL 전문가 가이드 2013 ..

WHERE 조건절 개요 WHERE 조건절을 적지 않으면 FTS(Full Table Scan)을 하게 되므로 대량 조회가 되어 CPU나 메모리를 과다하게 사용하게 된다. WHERE 절은 필터링과 같은 역할을 한다고 보면 된다. WHERE 절 WHERE 절은 FROM 절 다음에 위치한다. 컬럼명, 비교연살자, 문자, 숫자, 표현식, 비교컬럼명 등이 올 수 있다. SELECT 컬럼명 FROM 테이블명 WHERE 조건식 ; WHERE 절에 올 수 있는 연산자 비교 연산자 : =, >, >=,

트랜잭션 트랜잭션은 분리될 수 없는 한 개 이상의 테이터베이스 조작을 의미한다. 하나의 트랜잭션에는 하나 이상의 SQL문장이 포함된다. 트랜잭션은 분할할 수 없는 최소의 단위이다. 그렇기 때문에 전부 적용하거나 전부 취소한다. 트랜잭션은 "All or Notiong" 이다. 예를들어 은행 계좌이체 상황이라고 하자. STEP1. 1번 계좌의 잔액에서 1만원을 뺀다. STEP2. 2번 계좌의 잔액에 1만원을 더한다. 계좌이체라는 작업 단위는 이런 두 개의 업데이트가 모두 성공적으로 완료되었을 때 종료된다. 둘 중 하나라도 실패할 경우 계좌이체는 원래 금액을 유지해야 한다. 장애로 인해 어느 한쪽만 실행되면 금액이 증가하거나 사라질 수 있겠지? 이런 일이 있어서는 안되므로 두 작업을 하나의 트랜잭션으로 묶는 ..
DML(Date Manipulation Language) 테이블에 자료를 입력, 수정, 삭제, 조회하는 명령어들 INSERT 데이터를 입력하는 명령어 한 번에 한 건만 입력된다. -- 자료를 입력하는 두 가지 방법 -- 컬럼을 정의한느 방법. 컬럼의 순서는 테이블 컬럼 순서와 매치할 필요가 없다. -- 정의되지 않은 컬럼은 디폴트로 NULL이 입력된다. -- 단, PK나 Not NULL로 지정된 컬럼은 NULL이 허용되지 않는다. INSERT INTO 테이블명(COLUMN_LIST) VALUES (COLUMN_LIST에 넣을 VALUE_LIST) ; -- 모든 컬럼에 데이터를 입력하는 방법. -- 컬럼 순서대로 빠짐없이 데이터가 입력되어야 한다. INSERT INTO 테이블명 VALUES (전체 COLU..
TRUNCATE TABLE 은 DROP TABLE 과는 달리, 테이블 자체가 삭제되는 것이 아니라 테이블 구조를 유지한 채 내용(모든 행)을 삭제하는 것이다. 재사용이 가능한 형태로 내용물만 제거한다. TRUNCATE TABLE PLAYER ; DROP TABLE 은 테이블 자체가 삭제되기 때문에 테이블 구조를 확인할 수 없지만, TRUNCATE는 테이블은 있되 데이터만 삭제하는 기능이다. DML로 분류하기도 하지만, 처리방식이나 Auto commit 특성을 가져 DDL로 분류한다. TRUNCATE 는 부하가 적다. 하지만 Auto commit 되기 때문에 삭제 후 복구가 되지 않으므로 주의가 필요하다. * kdata 한국데이터진흥원에서 출간한 SQL 전문가 가이드 2013 Edition을 요약했습니다.