본문 바로가기

자격증 Study-O

SQL 개발자 (Sqld 자격검정) 내용 - 2과목 DML

DML 데이터 조작어

SELECT INSERT UPDATE DELETE

 

INSERT 문

 INSERT INTO 테이블명 (칼럼명,칼럼명...) VALUES(값,값...);  문자열 값은 '값'

 INSERT INTO 테이블명 VALUES(값,'값');

모든 칼럼에 대한 데이터 삽입은 칼럼명 생략 가능

INSERT INTO 테이블명

 SELECT * FROM 조회_테이블명;

 

UPDATE문

UPDATE 수정_테이블

 SET 칼럼명 ='수정이름'

 WHERE 칼럼=조건;

 

DELETE문

DELETE FROM 테이블명

 WHERE 칼럼=조건;

 

SELECT문

SELECT 칼럼 FROM 테이블

 WHERE 데이터=조건;

칼럼명 *는 모든 데이터를 조회

 

SELECT * FROM 테이블명

 ORDER BY 정렬기준, 정렬기준 DESC;

정렬기준은 ASC가 기본값이며, DESC는 직접 입력

ORDER BY가 SELECT문중 가장 늦게 처리된다

 

/*+INDEX_DESC(A)*/ 힌트를 통해 SELECT ORDER BY의 사용을 피할수 있다

SELECT /*+INDEX_DESC(A)*/ FROM 테이블명;

 

SELECT DISTINCT 칼럼명 FROM 테이블명

 ORDER BY 칼럼명;

DISTINCT를 통하여 중복된 값을 빼도 조회할 수 있다

 

SELECT문 실행 순서

FROM , WHERE , GROUP BY , HAVING , SELECT , ORDER BY

 

WHERE문

비교연산자

= , < , <= , > , >=

 

부정비교 연산자

!= , ^= , <> , NOT 칼럼명= , NOT 칼럼명>

 

논리 연산자

AND , OR , NOT

 

부정 SQL 연산자

LIKE '%비교 문자열%' , BETWEEN A AND B , IN(list) , IS NULL

 

LIKE문 사용

 WHERE 칼럼 LIKE '문자열&';

문자열로 시작하는 모든 문자

 WHERE 칼럼 LIKE '_문자열';

문자열 앞에 한개의 글자가 있는 문자

 

BETWEEN문 사용

 WHERE 칼럼 BETWEEN(NOT BETWEEN) 조건 AND 조건;

 

IS NULL문 사용

 WHERE 칼럼 IS NULL(IS NOT NULL);

 

GROUP BY문

SELECT 칼럼명, SUM(칼럼명) FROM 테이블명

 GROUP BY 칼럼명

 HAVING SUM(칼럼명) > 조건;

 

COUNT()함수

 SELECT COUNT(*) FROM 테이블명;

NULL을 포함한 전체 행 수 계산

 SELECT COUNT(칼럼명) FROM 테이블명;

NULL값을 제외한 행 수 계산

 

숫자형 함수

ABS(숫자) , SIGN(숫자) , MOD(숫자,숫자),

CEIL/CEILING(숫자) , FLOOR(숫자) , ROUND(숫자) , TRUNC(숫자)

 

DECODE문

 SELECT DECODE (칼럼명,값,'TRUE','FALSE') FROM 테이블명;

칼럼명이 값과 같다면 TRUE, 다르면 FALSE

 

CASE문

SELECT CASE 

 WHEN 칼럼명 = 조건_1 THEN '결과_1'

 WHEN 칼럼명 = 조건_2 THEN '결과_2'

 ELSE '결과_3'

 END

FROM 테이블명;

 

댓글