2021.05.11.-2021.06.08.
β
Oracle DBMSλ₯Ό μ¬μ©ν λ³μ λ°μ΄ν°λ² μ΄μ€μ΄λ€.
β
μ΄λ₯Ό ν΅ν΄ λ³μμ μλ λͺ¨λ μμ¬λ€ λ° κ°νΈμ¬λ€μ λ°μ΄ν°λ₯Ό νμΈν μ μμΌλ©°, λ΄λΉνλ μ§λ£κ³Όλ₯Ό νμΈν μ μλ€.
β
λν, νμμ λ΄λΉμμ¬ λΏλ§ μλλΌ μ μ μ 보λ₯Ό νμΈν μ μμΌλ©°, νμ λ° μμ¬ μ¬μ΄μ μ§λ£ λ΄μ©μ νμΈν μ μλ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ€κ³νμ¬, λ°μ΄ν°λ₯Ό ꡬμΆν ν μ§μλ₯Ό ν΅ν΄ μνλ μ 보 κ²μ κΈ°λ₯μ μ 곡νλ€.
β
λ³μμ νμ, μμ¬, κ°νΈμ¬, μ§λ£κ³Ό λ±μ μ 보λ₯Ό μ½κ² μ°Ύμ보κ³
κ°κ°μ μ§μ°° λ΄μ©μ΄λ κΈ°λ‘μ μ°Ύμλ³Ό μ μλ μμ€ν μ΄λ€.
β
λ³μμλ μμ¬, μ§λ£κ³Ό, κ°νΈμ¬, νμ, μ μμ΄ μ‘΄μ¬νλλ° κ·Έ μ€ μμ¬κ°
νμλ₯Ό μ§λ£νλ©΄, μ§λ£μΌ, μ²λ°©λ΄μ©, μ§λ£κ³Ό, μ§λ£ λ²νΈλ₯Ό κ²μν μ μλ€.
β
λν νμκ° λ³μμ μ μνμ λ, μ μλ²νΈ, μ μμΌ, ν΄μμΌ, μ μμ€ μ 보λ₯Ό νμΈ ν μ μλ€.
β
κ°νΈμ¬λ νμλ₯Ό μ²μΉν΄μ£Όλ©΄μ μ²μΉμΌ, μ²μΉλ΄μ©μ νμΈν μ μλ€.
β
λν μμ¬μ κ°νΈμ¬λ μ§λ£κ³Όμ μν΄μμΌλ©°
κ°κ°μ μμ¬, κ°νΈμ¬μ μ§λ£κ³Όλͺ©μ΄λ μμ¬λ²νΈ, κ°νΈμ¬λ²νΈ λ±μ ν΅νμ¬ μμ¬λ κ°νΈμ¬λ₯Ό μ‘°νν μ μλ€.
β
λν νμλ²νΈλ₯Ό ν΅ν΄ νμλ₯Ό κ²μν μ μμΌλ©° μ§λ£κ³Όλ κ³Όλ²νΈλ₯Ό ν΅ν΄ μμΈν κ²μν μ μλ€.
β
β
β
β
μ£Όλ―Όλ±λ‘λ²νΈλ λλ€μΌλ‘ μμ±νμλ€.
νλ‘μ νΈ κΈ°λ₯μ λ€μκ³Ό κ°λ€.
β
νΉμ μμ¬μκ² μ§μ°°λ°μ νμ μ€ μ‘°κ±΄μ λ§μ‘±νλ νμμ μ κ²μ
νμκ° κ°μ₯ λ§μ΄ μ μν μ§λ£κ³Ό μ‘°ν
νΉμ νμμ μ§λ£ κΈ°λ‘κ³Ό μ§λ£ λ΄μ© κ²μ
μ§λ£ λ°μμ§ 6κ°μμ΄ κ²½κ³Όν ν΄μν νμμ μ΄λ¦, μ νλ²νΈ κ²μ
νΉμ ν λ μ§μ μ μν νμλ₯Ό μ§λ£ν κ°νΈμ¬μ κ³Όμ΄λ¦ κ²μ
νΉμ κ°νΈμ¬μκ² μ²μΉλ°μ νμμ μ΄λ¦, μ νλ²νΈ, μ£Όμ κ²μ
νΉμ ν λ μ§μ μ§λ£λ°μ νμμ μ§λ£κ³Όμ μ νλ²νΈ κ²μ
β
μꡬμ¬ν λͺ μΈμλ λ€μκ³Ό κ°λ€.
β
1)μμ¬λ κ³ μ μ μμ¬λ²νΈ, μ§λ£κ³Όλͺ©, μ΄λ¦, μ νλ²νΈ, μ£Όμλ₯Ό κ°μ§λ€.
β
2)κ°νΈμ¬λ κ³ μ μ κ°νΈμ¬λ²νΈ, μ§κΈ, μ΄λ¦, μ νλ²νΈ, μ£Όμ, μ§λ£κ³Όλͺ©, κ³Όλ²νΈλ₯Ό κ°μ§λ€.
β
3)νμλ κ³ μ μ νμλ²νΈ, μ΄λ¦, μ£Όλ―Όλ±λ‘λ²νΈ, μ νλ²νΈ, μ£Όμ, μ μ₯(ν€), λͺΈλ¬΄κ², νμ‘ν, μ±λ³, μ§λ£λ΄μ©μ κ°μ§λ€.
β
4)μ μμ κ³ μ μ μ μμΌ, ν΄μμΌ, μ μμ€ μ 보λ₯Ό κ°λλ€.
β
5)μ§λ£κ³Όλ κ³ μ μ κ³Όλ²νΈ, κ³Όμ΄λ¦, μ νλ²νΈ μ 보λ₯Ό κ°λλ€.
β
6)μμ¬λ μ¬λ¬ λͺ μ νμλ₯Ό μ§μ°°ν μ μκ³ , νμλ μ¬λ¬ λͺ μ μμ¬μκ² μ§λ£λ°μ μ μλ€.
β
7)μ§λ£λ₯Ό λ°μΌλ©΄ μ§λ£λ²νΈ, μ§λ£μΌμ΄ μ μ₯λλ€.
β
8)κ°νΈμ¬λ μ¬λ¬ λͺ μ νμλ₯Ό μ²μΉν μ μμΌλ©° μ΄λ μ²μΉμΌ, μ²μΉλ΄μ©μ΄ μ μ₯λλ€.
β
9)μ§λ£λ΄μ©μ λ€μ€κ°μ κ°μ§ μ μλ€. (ex. μ½1μ ν΄μ΄μ , μ½2λ μ§ν΅μ ..etc)
β
10)μμ¬μ κ°νΈμ¬λ νλμ μ 곡(μ§λ£κ³Όλͺ©)μ κ°μ§λ€.
β
11)νμλ μ μν μ μμΌλ©° μ μμ νμκ° μ‘΄μ¬ν λμλ§ μμ μ μλ μ½μ±κ°μ²΄μ΄λ€.
β
12)νμλ μ¬λ¬ λͺ μ μν μ μλ€.
β
β
E-R λ€μ΄μ΄κ·Έλ¨
β
κ°μ²΄μ μμ± μΆμΆμ νλ©΄ λ€μκ³Ό κ°λ€.
|
κ°μ²΄
|
μμ±
|
|
μ§λ£κ³Ό
|
κ³Όλ²νΈ, κ³Όμ΄λ¦, μ νλ²νΈ
|
|
μμ¬
|
μμ¬λ²νΈ, μ΄λ¦, μ£Όμ, μ νλ²νΈ
|
|
κ°νΈμ¬
|
κ°νΈμ¬λ²νΈ, μ£Όμ, μ΄λ¦, μ νλ²νΈ
|
|
νμ
|
νμλ²νΈ, μ£Όλ―Όλ±λ‘λ²νΈ, μ μ₯(ν€), νμ‘ν, μ£Όμ, μ±λ³, λͺΈλ¬΄κ², μ νλ²νΈ, μ΄λ¦, μ§λ£λ΄μ©
|
|
μ
μ
|
μ
μμ€, ν΄μμΌ, μ
μμΌ
|
β
β
κ΄κ³ μΆμΆμ νλ©΄ λ€μκ³Ό κ°λ€.
|
κ΄κ³
|
μ°Έμ¬ κ°μ²΄
|
κ΄κ³ μ ν
|
μμ±
|
|
μν¨
|
μ§λ£κ³Ό(μ ν), μμ¬(μ ν)
|
μΌλλ€
|
-
|
|
μ§λ£
|
μμ¬(μ ν), νμ(νμ)
|
λ€λλ€
|
μ§λ£λ²νΈ, μ§λ£μΌ
|
|
μ²μΉ
|
κ°νΈμ¬(μ ν), νμ(μ ν)
|
μΌλλ€
|
μ²μΉμΌ, μ²μΉλ΄μ©
|
|
μ
μ
|
μ
μ(νμ), νμ(μ ν)
|
μΌλλ€
|
-
|
|
μν¨
|
μ§λ£κ³Ό(μ ν), κ°νΈμ¬(μ ν)
|
μΌλλ€
|
-
|
β
β
β
E-R λ€μ΄μ΄κ·Έλ¨μ λ€μκ³Ό κ°λ€.

β
릴λ μ΄μ μ€ν€λ§λ λ€μκ³Ό κ°λ€.
β
μ§λ£κ³Ό 릴λ μ΄μ ( κ³Όλ²νΈ, κ³Όμ΄λ¦, μ νλ²νΈ )
μ§λ£ 릴λ μ΄μ ( μ§λ£λ²νΈ, μμ¬λ²νΈ, νμλ²νΈ, μ§λ£μΌ )
μμ¬ λ¦΄λ μ΄μ ( μμ¬λ²νΈ, μ΄λ¦, μ νλ²νΈ, μ£Όμ, κ³Όλ²νΈ )
κ°νΈμ¬ 릴λ μ΄μ ( κ°νΈμ¬λ²νΈ, μ΄λ¦, μ νλ²νΈ, μ£Όμ, κ³Όλ²νΈ)
μ μ 릴λ μ΄μ ( νμλ²νΈ, μ μμΌ, ν΄μμΌ, μ μμ€ )
νμ 릴λ μ΄μ (νμλ²νΈ, μ΄λ¦, μ£Όμ, μ νλ²νΈ, μ£Όλ―Όλ±λ‘λ²νΈ, μ μ₯(ν€), λͺΈλ¬΄κ², νμ‘ν, μ±λ³, κ°νΈμ¬λ²νΈ, μ²μΉμΌ, μ²μΉλ΄μ©)
νμ-μ§λ£λ΄μ© 릴λ μ΄μ (νμλ²νΈ, μ§λ£λ΄μ©)
INSERT
INTO μ§λ£κ³Ό(κ³Όλ²νΈ, κ³Όμ΄λ¦, μ νλ²νΈ)
SELECT 1, 'κ°μ μνκ³Ό', μ νλ²νΈ FROM DUAL UNION ALL
...
SELECT 19, 'μκ³Ό', μ νλ²νΈ FROM DUAL;
λ±μΌλ‘ κ°κ° ν μ΄λΈμ μμ±νλ€.
1.
'λ°μλ―Ό' μμ¬μκ² μ§λ£λ°μ νμ μ€, μ§λ£ λ΄μ©μ΄ ‘μκΈ’μΈ νμμ μ΄λ¦, νμλ²νΈ,μ νλ²νΈλ₯Ό νμμ μ΄λ¦ μμ±λͺ μ μκΈνμλ‘ νμ¬, μ΄λ¦μ κΈ°μ€μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μΆλ ₯νλΌ.
SELECT νμ.νμλ²νΈ, νμ.μ΄λ¦ AS μκΈνμ, νμ.μ νλ²νΈ
FROM νμ,μμ¬,μ§λ£λ΄μ©,μ§λ£
WHERE μμ¬.μμ¬λ²νΈ=μ§λ£.μμ¬λ²νΈ
and μ§λ£.νμλ²νΈ=μ§λ£λ΄μ©.νμλ²νΈ
and μ§λ£.νμλ²νΈ=νμ.νμλ²νΈ
and μμ¬.μ΄λ¦='λ°μλ―Ό'
and μ§λ£λ΄μ©.μ§λ£λ΄μ©='μκΈ'
ORDER BY νμ.μ΄λ¦;
β ASλ₯Ό μ΄μ©νμ¬ μΆλ ₯ ν€λμ 컬λΌλͺ λ³κ²½
β FROMκ³Ό WHEREμ μ¬μ©νμ¬ μ§λ£, νμ, μ§λ£λ΄μ©, μ§λ£ ν μ΄λΈ μ‘°μΈ
β WHEREμ μ΄μ©νμ¬ μμ¬ μ΄λ¦, μ§λ£ λ΄μ©μΌλ‘ 쑰건 μ€μ
β ORDER BY : νμμ μ΄λ¦μΌλ‘ μ€λ¦μ°¨μ
2.
β
‘λ¬Έν’ νμμ μ§λ£λ΄μ©κ³Ό νμμ νμλ²νΈ, μ΄λ¦, μ νλ²νΈ, μ£Όμ, μ£Όλ―Όλ±λ‘λ²νΈ, μ±λ³, μ μ₯, λͺΈλ¬΄κ², νμ‘ν, κ·Έλ¦¬κ³ μ§λ£λ΄μ©μ μΆλ ₯νλΌ.
SELECT νμ.νμλ²νΈ, νμ.μ΄λ¦, νμ.μ νλ²νΈ, νμ.μ£Όμ, νμ.μ£Όλ―Όλ±λ‘λ²νΈ, νμ.μ±λ³, νμ.μ μ₯, νμ.λͺΈλ¬΄κ², νμ.νμ‘ν, μ§λ£λ΄μ©.μ§λ£λ΄μ©
FROM νμ, μ§λ£λ΄μ©
WHERE νμ.μ΄λ¦ = 'λ¬Έν' AND νμ.νμλ²νΈ = μ§λ£λ΄μ©.νμλ²νΈ;
β ASλ₯Ό μ΄μ©νμ¬ μΆλ ₯ ν€λμ 컬λΌλͺ λ³κ²½
β FROMκ³Ό WHEREμ μ¬μ©νμ¬ νμ, μ§λ£λ΄μ© ν μ΄λΈμ μ‘°μΈ
β WHEREμ μ΄μ©νμ¬ νμ μ΄λ¦μΌλ‘ 쑰건 μ€μ
β
3.
β
‘2020-08-13’μ μ§λ£λ°μ νμλ₯Ό κ²μνκ³ , κ·Έ νμλ₯Ό μ§λ£ν μμ¬μ μ§λ£κ³Ό κ³Όμ΄λ¦κ³Ό μ νλ²νΈλ₯Ό κ²μνλΌ.
SELECT μ§λ£κ³Ό.κ³Όμ΄λ¦, μ§λ£κ³Ό.μ νλ²νΈ
FROM μ§λ£κ³Ό
WHERE κ³Όλ²νΈ IN (SELECT μμ¬.κ³Όλ²νΈ
FROM μ§λ£, νμ, μμ¬
where μ§λ£.μ§λ£μΌ='2020-08-13'
and μ§λ£.νμλ²νΈ=νμ.νμλ²νΈ
and μμ¬.μμ¬λ²νΈ=μ§λ£.μμ¬λ²νΈ);
β λΆμμ§μλ¬Έμμ νΉμ λ μ§μ μ§λ£λ°μ νμλ₯Ό μ§λ£ν μμ¬μ κ³Όλ²νΈλ₯Ό μΆμΆ
β FROMκ³Ό WHEREμ μ¬μ©νμ¬ νμ, μ§λ£, μμ¬λ₯Ό μ‘°μΈ
β WHEREμ μ΄μ©νμ¬ κ³Όλ²νΈλ₯Ό ν΅ν΄ κ³Όμ΄λ¦, μ νλ²νΈ μΆμΆ
β
4.
β
κ°κ°μ μ§λ£κ³Όλ₯Ό κΈ°μ€μΌλ‘ μ μν νμλ€μ μλ₯Ό μ§λ£κ³Όμ κ³Όμ΄λ¦, μ μνμμλ‘ λ΄λ¦Όμ°¨μμ κΈ°μ€μΌλ‘ λνλ΄μ΄λΌ.
SELECT κ³Όμ΄λ¦, COUNT(κ³Όμ΄λ¦) AS μ
μνμμ
FROM μ
μ, μ§λ£, μμ¬, μ§λ£κ³Ό
WHERE μ
μ.νμλ²νΈ=μ§λ£.νμλ²νΈ
and μ§λ£.μμ¬λ²νΈ=μμ¬.μμ¬λ²νΈ
and μμ¬.κ³Όλ²νΈ=μ§λ£κ³Ό.κ³Όλ²νΈ
group by κ³Όμ΄λ¦
order by count(κ³Όμ΄λ¦) desc;
β ASλ₯Ό μ΄μ©νμ¬ μΆλ ₯ ν€λμ 컬λΌλͺ λ³κ²½
β ORDERμ ν΅ν΄ λ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬
β FROMκ³Ό WHEREμ μ¬μ©νμ¬ νμ, μ§λ£, μμ¬, μ μμ μ‘°μΈ
β GROUP BYλ₯Ό ν΅ν΄ κ°κ°μ κ³Όμ΄λ¦μΌλ‘ μ μν νμμ μλ₯Ό μΆμΆ
5.
β
μ΅κ·Ό 6κ°μλ΄μ μ§λ£λ°μ νμμ μ΄λ¦, μ νλ²νΈλ₯Ό κ²μνλΌ.
SELECT νμ.μ΄λ¦, νμ.μ νλ²νΈ
FROM νμ, μ§λ£
WHERE μ§λ£.μ§λ£μΌ > TO_CHAR(ADD_MONTHS(sysdate,-6),'YYYY-MM-DD')
and νμ.νμλ²νΈ=μ§λ£.νμλ²νΈ;
β WHEREμ μ΅κ·Ό 6κ°μλ΄μ μ§λ£λ°μ νμμ μ΄λ¦, μ νλ²νΈλ₯Ό μΆμΆ
β SYSDATEλ₯Ό μ΄μ©νμ¬ νμ¬ μ»΄ν¨ν° μμ€ν μ λ μ§λ₯Ό λ°ν
β ADD_MONTHS()λ₯Ό μ΄μ©νμ¬ μ΅κ·Ό 6κ°μ λ΄μ λ μ§ λ°μ΄ν°λ₯Ό λ°ν
β TO_CHAR()λ₯Ό μ΄μ©νμ¬ λ μ§ λ°μ΄ν°λ₯Ό λ¬Έμμ΄λ‘ λ³ν
6.
β
‘μ±μ°λ’ κ°νΈμ¬μκ² μ²μΉλ°μ νμμ μ΄λ¦, μ νλ²νΈ, μ£Όμλ₯Ό κ²μνλΌ.
β
select νμ.μ΄λ¦, νμ.μ νλ²νΈ, νμ.μ£Όμ
From νμ, κ°νΈμ¬
Where κ°νΈμ¬.μ΄λ¦='μ±μ°λ'
and κ°νΈμ¬.κ°νΈμ¬λ²νΈ = νμ.κ°νΈμ¬λ²νΈ;
β WHEREμ μ΄μ©νμ¬ ‘μ±μ°λ’κ°νΈμ¬λ‘ 쑰건 μ€μ
β Fromκ³Ό whereμ μ΄μ©νμ¬ νμ, κ°νΈμ¬ ν μ΄λΈ μ‘°μΈ
7.
β
‘2020-03-28’μ μ μν νμλ₯Ό μ²μΉν κ°νΈμ¬μ κ³Όμ΄λ¦μ κ²μνλΌ.
SELECT μ§λ£κ³Ό.κ³Όμ΄λ¦
FROM μ§λ£κ³Ό
WHERE κ³Όλ²νΈ IN(SELECT κ°νΈμ¬.κ³Όλ²νΈ
FROM κ°νΈμ¬, μ
μ, νμ
WHERE μ
μ.μ
μμΌ='2020-03-28'
and μ
μ.νμλ²νΈ = νμ.νμλ²νΈ
and νμ.κ°νΈμ¬λ²νΈ = κ°νΈμ¬.κ°νΈμ¬λ²νΈ);
β λΆμμ§μλ¬Έμμ νΉμ λ μ§μ μ μν νμλ₯Ό μ²μΉν κ°νΈμ¬μ κ³Όλ²νΈ μΆμΆ
β FROMκ³Ό WHEREμ μ¬μ©νμ¬ κ°νΈμ¬, μ μ, νμ ν μ΄λΈ μ‘°μΈ
β WHEREμ μ΄μ©νμ¬ μ§λ£κ³Όμ κ³Όμ΄λ¦μ μΆμΆ
2023.01.02 - [νλ‘μ νΈ/DB] - [DB] λ³μ κ΄λ¦¬ νλ‘κ·Έλ¨(2)
[DB] λ³μ κ΄λ¦¬ νλ‘κ·Έλ¨(2)
2021.10.20.-2021.12.14. β λ³μμ μλ§μ λ°μ΄ν°κ° μ‘΄μ¬νμ¬ νλνλ νμΈνκΈ°μλ μ΄λ €μμ΄ μμ΄ λ³μ λ°μ΄ν°λ² μ΄μ€λ₯Ό ν΅ν΄ κ°μ’ μμ¬ λ° κ°νΈμ¬μ μ§λ£κ³Όλ₯Ό μμ½κ² κ²μν μ μλ€. β νμμ μ
dangsdangs.tistory.com
'νλ‘μ νΈ > DB' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
| [DB] λ³μ κ΄λ¦¬ νλ‘κ·Έλ¨(2) (0) | 2023.01.02 |
|---|