SQL 자격검증 실전문제 SQL 기본 및 활용(관계형 데이터베아스 개요, SELECT문, 함수, WHERE 절, GROUP BY, HAVING 절, ORDER BY 절, 조인, 표준 조인)
관계형 데이터베이스 개요, SELECT 문, 함수, WHERE 절, GROUP BY, HAVING 절, ORDER BY 절, 조인, 표준 조인
관계형 데이터베아스 개요, SELECT문 등
*1. 명령어 종류
DML(Data Manipulation Language) > 데이터 조작어 |
Select, Insert, Update, Delete | 데이터베이스에 들어 있는 데이터를 조회, 검색, 변형 |
DDL(Data Definition Language) > 데이터 정의어 |
Create, Alter, Drop, Rename | 테이블과 같은 데이터 구조를 정의 |
DCL(Data Control LanguageP > 데이터 제어어 |
Grant, Revoke | 데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어를 DCL이라 함 |
TCL (Transaction Control Language) > 트랜잭션 제어어 |
Commit, Rollback | 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과 작업단위별로 제어하는 명령어 |
*2. 함수의 실행 결과
*2-1. LOWER('SQL Expert') : 'sql expert'
*2-2. UPPER('SQL Expert') : 'SQL EXPERT'
*2-3. LTRIM('xxYYZZxYZxx', 'x') : 'YYZZxYZxx'
> LTRIM은 첫 번째 인자 값인 문자열의 왼쪽 첫 문자부터 확인해서 두 번째 인자 값인 지정문자가 나타나면 해당 문자를 제거한다.
*3. %의 위치에 아무런 문자가 들어가지 않을 수도 있다. 따라서 S가 첫 문자가 될 수도 있으므로 '%S___'은 옳지 않다.
*4-1. ROUND(4.875, 2) = 4.88
*4-2. LENGHT('KOREAN') = 6
*4-3. DATE_FORMAT('2022-11-02', '%Y-%m-%d') =2022-11-02
*4-4. SUBSTR('Gangeung Wonju', 8, 4) = ng W : 문자열에서 8번째 문자인 n에서부터 4개 문자를 출력함
*5-1. 일반적으로 조인은 PK와 FK 값의 연관성에 의해 성립된다.
*5-2. DBMS 옵티마이저는 FROM절에 나열된 테이블이 아무리 많아도 항상 2개의 테이블씩 짝을 지어 Join을 수행한다.
*5-3. EQUI Join은 조인에 관여하는 테이블 간의 컬럼 값들이 정확하게 일치하는 경우에 사용되는 방법이다.
*5-4. EQUI Join은 '=' 연산자에 의해서만 수행되며, 그 이외의 비교연산자를 사용하는 경우에는 모두 NON EQUI JOIN이다.
*5-5. 대부분 NON EQUI JOIN을 수행할 수 있지만, 때로는 설계상의 이유로 수행이 불가능한 경우도 있다.
*6. 순수 관계 연산자 : SELECT, PROJECT, JOIN, DIVIDE
*7-1. HAVING 절은 일반적으로 GROUP BY 절 뒤에 위치한다.
*7-2. 집계 함수의 통계 정보는 NULL 값을 가진 행을 제외하고 수행한다.
*7-3. GRUOP BY 절에서는 SELECT 절과는 달리 ALIAS명을 사용할 수 없다.
*7-4. 집계함수는 where 절에는 올 수 없다.
*8. 실행 결과가 NULL인 SQL : SELECT NULLIF('A', 'A') FROM DUAL;
> NULLIF(표현식1, 표현식 2) 함수는 표현식 1과 표현식 2가 같으면 NULL, 아니면 표현식 1을 리턴한다.