Notice
Recent Posts
Recent Comments
Link
Β«   2025/05   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
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
Tags more
Archives
Today
Total
관리 메뉴

AngzavA

[SQLD] 2-2-3. SQL ν™œμš© : μœˆλ„μš° ν•¨μˆ˜ λ³Έλ¬Έ

SQLD

[SQLD] 2-2-3. SQL ν™œμš© : μœˆλ„μš° ν•¨μˆ˜

이앙지 2023. 6. 8. 12:56

πŸ“–μœˆλ„μš° ν•¨μˆ˜

  • ν–‰κ³Ό ν–‰ κ°„μ˜ 관계λ₯Ό μ •μ˜ν•˜κΈ° μœ„ν•΄ μ œκ³΅λ˜λŠ” ν•¨μˆ˜
  • μˆœμœ„, 합계, 평균, ν–‰ μœ„μΉ˜ 등을 μ‘°μž‘ κ°€λŠ₯
  • GROUP BY ꡬ문과 λ³‘ν–‰ν•˜μ—¬ μ‚¬μš©ν•  수 μ—†λ‹€
  • GROUP BY 절의 집합을 μ›λ³ΈμœΌλ‘œ ν•˜λŠ” 데이터λ₯Ό WINDOW FUNCTIONκ³Ό ν•¨κ»˜ μ‚¬μš©ν•œλ‹€λ©΄ 였λ₯˜ X
  • κ²°κ³Ό κ±΄μˆ˜κ°€ μ€„μ–΄λ“€μ§€λŠ” μ•ŠμŒ
  • WINDOW/PARTITION/GROUP BY ꡬ문을 λ‘˜ λ‹€ νŒŒν‹°μ…˜μ„ λΆ„ν• ν•œλ‹€λŠ” μ˜λ―Έμ—μ„œλŠ” μœ μ‚¬
  • SUM, MAX, MIN κ³Ό 같은 집계 μœˆλ„μš° ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•  λ•Œ μœˆλ„μš° 절과 ν•¨κ»˜ μ‚¬μš©ν•˜λ©΄ 집계 λŒ€μƒμ΄ λ˜λŠ” λ ˆμ½”λ“œ λ²”μœ„λ₯Ό μ§€μ •ν•  수 μžˆλ‹€.

 

πŸ“–μˆœμœ„ ν•¨μˆ˜

  • νŠΉμ • ν•­λͺ©κ³Ό νŒŒν‹°μ…˜μ— λŒ€ν•΄μ„œ μˆœμœ„λ₯Ό 계산할 수 μžˆλŠ” ν•¨μˆ˜ 제곡
  • RANK, DENSE_RANK, ROW_NUMBER
μˆœμœ„ ν•¨μˆ˜ μ„€λͺ…
RANK - νŠΉμ •ν•­λͺ© 및 νŒŒν‹°μ…˜μ— λŒ€ν•΄μ„œ μˆœμœ„λ₯Ό 계산
- λ™μΌν•œ μˆœμœ„λŠ” 동일 κ°’
- 1,2,3,3,5,5,5,8,9....
DENSE_RANK λ™μΌν•œ μˆœμœ„λ₯Ό ν•˜λ‚˜μ˜ 건수둜 계산
- 1,2,2,3,3,4,5,5,5,....
ROW_NUMBER λ™μΌν•œ μˆœμœ„μ— λŒ€ν•΄μ„œ 고유 μˆœμœ„ λΆ€μ—¬
- 1,2,3,4,5,6...

 

πŸ“–μ§‘κ³„ ν•¨μˆ˜

집계 ν•¨μˆ˜ μ„€λͺ…
SUM νŒŒν‹°μ…˜ 별 합계 계산
AVG νŒŒν‹°μ…˜ 별 평균 계산
COUNT νŒŒν‹°μ…˜ 별 ν–‰ 수 계산
MAX 와 MIN νŒŒν‹°μ…˜ 별 μ΅œλŒ“κ°’κ³Ό μ΅œμ†Ÿκ°’μ„ 계산

 

 

πŸ“–ν–‰ μˆœμ„œ κ΄€λ ¨ ν•¨μˆ˜

  • ν–‰ μˆœμ„œ κ΄€λ ¨ ν•¨μˆ˜λŠ” μƒμœ„ ν–‰ 값을 ν•˜μœ„μ— 좜λ ₯ν•˜κ±°λ‚˜ ν•˜μœ„ ν–‰ 값을 μƒμœ„ 행에 좜λ ₯ν•  수 μžˆλ‹€
  • νŠΉμ • μœ„μΉ˜μ˜ 행을 좜λ ₯ν•  수 μžˆλ‹€
  • SQL SERVERμ—μ„œλŠ” μ§€μ›ν•˜μ§€ μ•ŠλŠ” ν•¨μˆ˜
ν–‰ μˆœμ„œ μ„€λͺ…
FIRST_VALUE νŒŒν‹°μ…˜μ—μ„œ κ°€μž₯ 처음 λ‚˜μ˜€λŠ” κ°’
MIN ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•΄μ„œ 같은 κ²°κ³Όλ₯Ό ꡬ할 수 μžˆλ‹€
LAST_VALUE νŒŒν‹°μ…˜μ—μ„œ κ°€μž₯ λ‚˜μ€‘μ— λ‚˜μ˜€λŠ” κ°’
LAG 이전 행을 κ°€μ§€κ³  μ˜¨λ‹€
LEAD μœˆλ„μš°μ—μ„œ νŠΉμ • μœ„μΉ˜μ˜ 행을 κ°€μ§€κ³  μ˜¨λ‹€
기본값은 1

https://u-it.tistory.com/entry/SQL%EC%9E%90%EA%B2%A9-%EA%B2%80%EC%A0%95-%EB%85%B8%EB%9E%AD%EC%9D%B4-123p-118%EB%B2%88-%EB%AC%B8%EC%A0%9C-%ED%92%80%EC%9D%B4

 

SQL자격 κ²€μ • λ…Έλž­μ΄ 123p 118번 문제 풀이

SELECT ID, START_VAL, NVL(END_VAL, 99) AS END_VAL, LAG(END_VAL) OVER(PARTITION BY ID ORDER BY START_VAL, NVL(END_VAL, 99)) AS FLAG1, LEAD(START_VAL) OVER(PARTITION BY ID ORDER BY START_VAL, NVL(END_VAL, 99)) AS FLAG2 FROM TBL; NVL(END_VAL, 99) END_VAL 컬

u-it.tistory.com

 

 

'SQLD' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[SQLD] 2-2-4. SQL ν™œμš© : PL/SQL  (0) 2023.06.08
[SQLD] 2-2-2. SQL ν™œμš© : κ·Έλ£Ή ν•¨μˆ˜  (0) 2023.06.08
[SQLD] 2-2. SQL ν™œμš©  (0) 2023.06.08
[SQLD] 2-1. SQL κΈ°λ³Έ  (1) 2023.06.07
[SQLD] 1-2.데이터 λͺ¨λΈκ³Ό μ„±λŠ₯  (0) 2023.06.07