일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- jQuery
- chart.js
- 오블완
- 자바
- SQL
- 웹개발
- firestore
- 코딩
- 이클립스
- myBatis
- Firebase
- CSS
- 기업설명회
- icon
- 깃허브
- 오류
- HTML
- 티스토리챌린지
- error
- JavaScript
- 스파르타코딩클럽
- github
- Eclipse
- vscode
- AJAX
- SQLD
- bootstrap
- spring
- restapi
- java
- Today
- Total
푸들푸들
[SQLD] 2과목 - SQL 기본 (2) 본문
Where절
원하는 데이터만 검색
IN(1,2,3): 1 or 2 or 3
LIKE - %:0개 이상, _:1개이상
ISNULL
연산 순서: ()-NOT-비교-AND-OR
ROWNUM: 1~, 중복X / =1, <= 비교
TOP(n) : n행
TOP(n) percent : 전체의 n%번째 행
TOP(n) with ties : top n+top n과 같은 값 있는 행 출력
null+숫자 = null
null 비교는 isnull, isnotnull
1: varchar=문자
-> 숫자만 있다면 괜찮지만 문자가 섞여있다면 "서비스번호=1" 조회 불가
2,3 -> ?
'201501’ = TO_CHAR(SVC_END_DATE, 'YYYYMM’) 일date가 지정X-> 1일로 초기화 ->2015년1월
AVG 집계함수 -> GROUP BY 이후에 쓸 수 있음
FROM - WHERE - GROUP BY - SELECT - ORDER BY
%: 0개 이상
%S_ _ _= Sxxx or xSxxx
GROUP BY 이후에 MAX를 하면 그룹별 max를 구하려 해 다중행 연산 -> 오류
GROUP BY, HAVING 절
집계함수
where절에 바로 집계함수 사용XX
group by 절에는 alias 사용XX
group by -> having
집계함수는 null 무시
COUNT(grade) <- null 무시
널 =/ null
COUNT(*) <- null 취급
~별 -> group by
밑에 sql 중요하지 XX, 선택지가 더 중요
집계함수 중복 사용 -> (논리적) 오류
SYSDATE = 오늘
오늘+1=내일
ORDER BY
가장 마지막, 정렬
ORACLE - null 가장 큰 값
SQL Server - null 가장 작은 값
실행순서
CASE WHEN ID=999 THEN 0 -> ID=999-> 0 // ID=100 -> 그대로 ==> 오름차순 => 999 100
ORDER BY 절 안의 내용은 결괏값에 영향주지 xx, 정렬기준일뿐
➂ ORDER BY 절에서 컬럼명 대신 ALIAS 명이나 컬럼순서를 나타내는 정수도 사용 가능, 혼용하여 사용도 가능
ORDER BY 기준이 2개일 때 (ORDER BY A,B DESC)
1차적으로 A 기준으로 정렬(오름차순) -> 2차적으로 B기준으로 정렬(DESC)
조인 JOIN
테이블 n개 -> 조인 횟수 n-1
표준 조인
- Union : 합집합
- - Union: 중복제거, 정렬 -> 시스템 부하
- - Union ALL: 중복 출력, 정렬X
- Intersection : 교집합 - Intersection
- Difference : 차집합 - Except
- Product : 곱집합 = Cartesian Product - Cross Join
연산자
- Select 연산 -> Where절
- Project 연산 -> Select절 (select연산 ≠ select절)
- Join 연산 -> Inner, outer,..
INNER JOIN
FROM절에서 정의
with. ON조건절 - 접두사 사용
NATURAL JOIN
with.USING 조건절
Alias XX
CROSS JOIN
M*N건의 조합 발생
OUTER JOIN
NULL도 출력됨
LEFT / RIGHT / FULL OUTER JOIN
'구디아카데미 > SQLD' 카테고리의 다른 글
[SQLD] 오답노트 - 2과목: SQL 기본 (0) | 2024.11.11 |
---|---|
[SQLD] 오답노트 - 1과목 (1) | 2024.11.11 |
[SQLD] 2과목 - SQL 기본 (1) | 2024.11.05 |
[SQLD] 1과목 - 개정 (0) | 2024.11.05 |
[SQLD] 1과목 - 데이터 모델과 성능 (0) | 2024.11.04 |