일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 취준생
- ㅂ.
- ai 새싹 부트캠프 4일차
- 새싹 AI데이터새싹 엔지니어 부트캠프 3일차
- 데이터분석가면접준비
- ai 새싹 부트캠프 6일차
- ai 새싹 부트캠프 5일차
- Til
- 데이터관련면접
- 통계용어 정리
- 새싹 AI데이터새싹 엔지니어 부트캠프
- T
- 데이터분석가
- ASAC
- ai 새싹 부트캠프 7일차
- 새싹 AI데이터새싹 엔지니어 부트캠프 2일차
- 새싹 AI데이터새싹 엔지니어 부트캠프 1일차
- X
- Today
- Total
데이터 공부기록
SQLD 정리 본문
https://www.youtube.com/watch?v=PC3ypt_VGWI&t=29s
- 출처 : 김강민SQLP 유튜브 강의
모르는 개념 찾아보기
https://starrykss.tistory.com/1987
[SQLD] SQL개발자 단원별 내용 정리 & 실전 문제
SQL개발자(SQLD) 단원별 내용 정리 & 실전 문제 SQL개발자(SQLD) 자격증을 준비하면서 블로그에 올렸었던 글들을 한 페이지에 정리해본다. 개념 정리 인터넷 블로그, 교재 등을 보면서 정리했던 내용
starrykss.tistory.com
1. sql 명령문 개괄
시험, 연산 순서 정렬하는 문제
from - where - group by - having - select - order by
종류 쓰는 문제
데이터 조작어 - (DML : Data Manipulation Language)
-> select, insert, delete, update
데이터 정의어-(DDL : Data Definition Language)
-> alter 바꾸다, create, modify, drop
트랜잭션 제어어- (TCL : Transaction Control Language)
-> rollback, commit
데이터 제어어 - (DCL : Data Control Language)
-> grant, revoke
select
distinct(집약)
중복된 값들은 중복 제거(집약) = 원하는 정보를 집약
X
distinct deptno, mgr = group by (deptno, mgr)
as
select
1. as 생략 가능
2. 컬럼명에 띄어쓰기
ex. 직원 번호> "직원 번호"
from
1. as 사용불가
concat
- 연산자가 무슨 기호인가?
+ = sql server
|| = oracle
- 인수가 무조건 2개?
concat( , )
논리연산자
and
or
not
- 의미
- 연산순위
1. not
2. and
3. or
nao
sql 연산자
- between and
a between 1 and 2 = 1<= a <= 2
- in
a in (1,2,3)
a=1 or 2 or 3
- like 3문제
와일드 카드에서 _ : 미지의 한 글자
%: 0이상의 글자
ex. '_l%'> 두번째 글자에 l 들어가는 사원들 다 고르는 것
- escape
와일드카드(_ %)를 문자로 취급하는 함수
ex. like 'A_A' > 'A@_A'
EECAPE> '@'
// 와일드카드 앞에, @는 아무 문자 가능
- ROWNUM(ORACLE), TOP(SQL SERVER)
(WHERE) ROWNUM=1 포함
(SELECT) TOP(N)(컬러명) 컬럼명 출력할 때 상위 N개
- 시험,
SELECT EMPNO, SAL
FROM EMP
WHERE ROWNUM<= 3
ORDER BY SAL DESC> 가장 마지막에 실행
- NULL, 시험 5문제
1. NULL의 정의
부재, 모르는 값
2. NULL의 산술연산
= NULL
2. NULL의 비교연산
EX. NULL=NULL
NULL=2
> 알 수 없음(UNKNOWN)
> WHERE(조건=UNKNOWN)> "FALSE"
3. 정렬상의 의미
오라클: 무한대
SQL SERVER: 최소값, -무한대
4. 25:19
[NVL> 널뛰기, (값1. 값2)
NVL2 (1, 2, 3)
ISNULL] (1, 2)
[NULLIF]> 같이 놀자! (1, 2)
[COALESCE]> 널 아닌 첫번째 값 (1, 2 ~ 무한대)
정렬 4문제
1. 정렬의 정의, 특성
- 가장 마지막에 실행
- 성능이 느려질 가능성, 소팅 작업
- 널값과의 관계
2. 컬럼번호 정렬
*출력되는 컬럼의 수 보다 큰 값 불허
3. 인수 두개 정렬
SAL DESC, ENAME ASC
4. 출력되지 않는 컬럼명으로 정렬 가능
SELECT ENAME
ORDER BY SAL
숫자 함수
1. ROUND 자릿수
ROUND(138.94, 인수)
EX. 0.123~
// 반올림 함수
2. CEIL ORACLE/ CEILING SQL SERVER
// 올림 함수
문자열 함수
1. UPPER/ LOWER 대/ 소문자
2. LPAD, RPAD/ 공백 채우기, LTRIM, RTRIM/ 공백 제거
3. SUBSTR/ 문자 추출, INSTR/ 문자 위치 찾기 실습하기
날짜 함수
1. TO_CHAR, TO_DATE 실습하기
시험, 다음 중 데이터의 형 변환을 일으키는 함수?
2. SYSDATE(ORACLE)
GETDATE(SQL SERVER)
3. 날짜 데이터+100? 100일 이후 , DAY로 인식
DECODE/CASE
CASE만 시험!
CASE
WHEN THEN 1
WHEN THEN 2
ELSE 3/ ELSE 없을 때, 1, 2 만족X> NULL
AND
집계함수, 시험 2-3문제
1. NULL 과의 관계
SUM(A)// 열 계산, 널뛰기
SUM(A+B+C)// 행 계산, NULL 연산
SUM(A)+SUM(B)+SUM(C) VS
SUM(A+B+C) 차이 기억
GROUP BY
집약 기능, WHERE 다음에 실행, 그룹 수준으로 정보를 바꾼다
HAVING? 그룹에 대한 조건식
JOIN
1. NATURAL JOIN
USING -
> 중복된 컬럼 "하나"로 출력
> 제일 앞에 등장
> 테이블 ALIAS 사용 불가, 중요
2. LEFT, OUTER JOIN
EX. A LEFT OUTER JOIN B
= A COL1(조인키) =B COL1(+)/ 반대
선행 테이블이 선행 조건절 앞에, 후행 테이블은 후행 조건절 뒤에 있을 경우
서브쿼리
들어가는 위치 중요
SELCET SCALAR
FROM INLINE VIEW, 메인 쿼리의 컬럼 사용 가능
WHERE 거의 모든 서브쿼리
GROUP BY X
HAVING 거의 모든 - > 중첩서브쿼리
ORDER BY SCALAR
2.
SELECT
FROM A
WHERE SELECT
FROM B COL
= A COL1
// A를 찾을 때 까지 = A COL1에 대입
서브쿼리에는 값이 고정 COLL = A
3.
IN
ANY/ SOME
ALL
EXIST 존재하다
모든 문자 출력 가능> TRUE
(0ROWS)> FALSE
집합연산자 46:38
UNION 합집합
INTERSECT 교집합
MIINUS(SQL SERVER> EXCEPT )
정렬 작업 존재, 느리다
UNION ALL> 중복 데이터 존재
정렬 작업X, 빠르다
UNION과 UNION ALL의 비교 , 누가 빠르냐?
DDL
TCL과 연관지어 생각
1.
TRUNCATE VS DROP
입주민 퇴거/ 철거
구조(로그 데이터, 이전 기억 정보)가 남음/ 구조 삭제
TRUNCATE VS DELETE
> DDL VS DML
ROLLBACK, COMMIT
DML
INSERT
UPDATE
DELETE
1. TCL과 연관지어 출제
2. INSERT 오류사항
INSERT (인수 3개) VALUSE (인수 2개) 오류
MERGE
제약조건
PK= UNIQUE+ NOT NULL
UNIQUE
NOTNULL
DCL
GRANTE
REVOKE
1. 정의
2. ROLE 5가지 특징
- 롤은 롤에게 부여 가능
- 사람에게 부여 가능,
- 사람들은 같은 롤을 가질 수 있음
- 롤을 부여할려면 권한이 필요함
- 롤은 권한이 있는 사용자한테 만들어짐
명령어가 아닌 객체 중 하나
객체? 데이터베이스를 구성하는 물질들
EX. 테이블, 인덱스, 뷰, 롤
3. 문법
ON TO 구문
VIEW
독편보
*독립성, 기존 테이블의 구조가 변경되면 뷰 구조도 같이 변경, 업데이트 필요 X
*편리성
*보안성
그룹함수
ROLL UP
CUBE
GROUPINGSETS
(GROUPING)
시험, 결과값 주고 뭘 썻는지?, 세개 비교표
EX. ROLLUP(A, B)
ROLLUP(B, A) = 같은 결과X
CUBE(A, B) =
- = 같은 결과
1. NULL 다 찾기
2. 총합행 찾기
있으면 ROLL UP(행의 수가 적으면), CUBE(행의 수가 많으면)
없으면 GROUPINGSETS
기출문제 풀면서 연습
TCL
COMMIT, ROLLBACK
SQL SERVER, AUTO COMMIT OFF AND BEGIN TRANSACTION> DDL COMMIT 기능 X
'자격증 > SQLD' 카테고리의 다른 글
[1-1]데이터 모델의 이해 (0) | 2024.05.07 |
---|