๊ด€๋ฆฌ ๋ฉ”๋‰ด

IT’s Portfolio

[Lecture] DataBase - Day 6 ๋ณธ๋ฌธ

Development Study

[Lecture] DataBase - Day 6

f1r3_r41n 2023. 4. 10. 13:34
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ–ฅ DataBase - Day 6

  • 2.5 ํ™•์žฅ๋œ ๊ด€๊ณ„ ๋Œ€์ˆ˜ ์—ฐ์‚ฐ์ž
    • ๊ธฐ๋ณธ ์ œ๊ณต ์—ฐ์‚ฐ์ž๋ฅผ ํ™•์žฅํ•œ ์—ฐ์‚ฐ์ž๋“ค์ด ์ œ์•ˆ๋จ
      • ์ž์—ฐ ์กฐ์ธ ์—ฐ์‚ฐ์„ ํ™•์žฅํ•œ ์„ธ๋ฏธ ์กฐ์ธ๊ณผ ์™ธ๋ถ€ ์กฐ์ธ
    • ์„ธ๋ฏธ ์กฐ์ธ(semi-join)
      • ๋ฆด๋ ˆ์ด์…˜ S์˜ ์กฐ์ธ ์†์„ฑ์œผ๋กœ๋งŒ ๊ตฌ์„ฑํ•œ(ํ”„๋กœ์ ํŠธํ•œ) ๋ฆด๋ ˆ์ด์…˜์„ ๋ฆด๋ ˆ์ด์…˜ R์— ์ž์—ฐ ์กฐ์ธํ•˜๋Š” ๊ฒƒ
      • ํ‘œํ˜„๋ฒ• : $R โ‹‰ S$
      • ๊ฒ€์ƒ‰์— ๋ถˆํ•„์š”ํ•œ ์†์„ฑ์„ ๋ฏธ๋ฆฌ ์ œ๊ฑฐํ•˜์—ฌ ์กฐ์ธ ์—ฐ์‚ฐ์˜ ๋น„์šฉ์„ ์ค„์ผ ์ˆ˜ ์žˆ์Œ
      • ๊ตํ™˜์  ํŠน์ง•์ด ์—†์Œ
    • ์™ธ๋ถ€ ์กฐ์ธ(outer-join)
      • ๋‘ ๋ฆด๋ ˆ์ด์…˜์— ์ž์—ฐ ์กฐ์ธ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์กฐ์ธ ์†์„ฑ ๊ฐ’์ด ๊ฐ™์€ ํŠœํ”Œ์ด ์ƒ๋Œ€ ๋ฆด๋ ˆ์ด์…˜์— ์กด์žฌํ•˜์ง€ ์•Š์•„ ์กฐ์ธ ์—ฐ์‚ฐ์—์„œ ์ œ์™ธ๋œ ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ
        • ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์— ์†์„ฑ ๊ฐ’์ด ์—†๋Š” ๊ฒฝ์šฐ๋Š” ๋„ ๊ฐ’์œผ๋กœ ์ฒ˜๋ฆฌ
      • ์™ผ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ, ์˜ค๋ฅธ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ, ์™„์ „ ์™ธ๋ถ€ ์กฐ์ธ
        • ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์œผ๋กœ ๊ฐ€์ ธ์˜ค๊ณ ์ž ํ•˜๋Š” ๋ฆด๋ ˆ์ด์…˜์ด ๋ฌด์—‡์ด๋ƒ์— ๋”ฐ๋ผ ๋ถ„๋ฅ˜
        • ์กฐ์ธ ์—ฐ์‚ฐ์—์„œ ์ œ์™ธ๋œ ํŠœํ”Œ์„ ํฌํ•จ
      • ์™ผ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ
        • ์™ผ์ชฝ์— ์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ๋ฆด๋ ˆ์ด์…˜์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ
      • ์˜ค๋ฅธ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ
        • ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ๋‘ ๋ฒˆ์งธ ๋ฆด๋ ˆ์ด์…˜์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ
      • ์™„์ „ ์™ธ๋ถ€ ์กฐ์ธ
        • ์—ฐ์‚ฐ์— ์ฐธ์—ฌํ•˜๋Š” ๋‘ ๋ฆด๋ ˆ์ด์…˜์— ์žˆ๋Š” ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒฐ๊ณผ ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ

[03] ๊ด€๊ณ„ ํ•ด์„

  • ๊ด€๊ณ„ ํ•ด์„(relational calculus)
    • ์ฒ˜๋ฆฌ๋ฅผ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฌด์—‡์ธ์ง€๋งŒ ๊ธฐ์ˆ ํ•˜๋Š” ๋น„์ ˆ์ฐจ ์–ธ์–ด
    • ์ˆ˜ํ•™์˜ ํ”„๋ ˆ๋””ํ‚ท ํ•ด์„(predicate calculus) ์— ๊ธฐ๋ฐ˜์„ ๋‘ 
    • ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ์ฒ˜๋ฆฌ๋ฅผ ์š”๊ตฌํ•˜๋Š” ํ‘œํ˜„๋ ฅ์—์„œ ๊ด€๊ณ„ ๋Œ€์ˆ˜์™€ ๊ด€๊ณ„ ํ•ด์„์€ ๋Šฅ๋ ฅ์ด ๋ชจ๋‘ ๋™์ผ
    • ํŠœํ”Œ ๊ด€๊ณ„ ํ•ด์„(tuple relational calculus) ๊ณผ ๋„๋ฉ”์ธ ๊ด€๊ณ„ ํ•ด์„(domain relational calculus) ๋กœ ๋ถ„๋ฅ˜

๐Ÿ‘‰๐Ÿป [Chapter 07] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด SQL

[01] SQL์˜ ์†Œ๊ฐœ

  • SQL(Structured Query Language)
    • ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์œ„ํ•œ ํ‘œ์ค€ ์งˆ์˜์–ด
    • ๋น„์ ˆ์ฐจ์  ๋ฐ์ดํ„ฐ ์–ธ์–ด
    • SEQUEL(Structured English QUEry Language) ์—์„œ ์œ ๋ž˜๋จ
      • SEQUEL : ์—ฐ๊ตฌ์šฉ ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ธ SYSTEM R ์„ ์œ„ํ•œ ์–ธ์–ด
    • ๋ฏธ๊ตญ ํ‘œ์ค€ ์—ฐ๊ตฌ์†Œ์ธ ANSI ์™€ ๊ตญ์ œ ํ‘œ์ค€ํ™” ๊ธฐ๊ตฌ์ธ ISO ์—์„œ SQL ์„ ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ‘œ์ค€ ์งˆ์˜์–ด๋กœ ์ฑ„ํƒํ•˜๊ณ  ํ‘œ์ค€ํ™” ์ž‘์—… ์ง„ํ–‰
    • ๋Œ€ํ™”์‹ SQL : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์— ์ง์ ‘ ์ ‘๊ทผํ•˜์—ฌ ๋Œ€ํ™”์‹์œผ๋กœ ์งˆ์˜๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์‹คํ–‰
    • ์‚ฝ์ž… SQL : ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ž‘์„ฑํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ์‚ฝ์ž…ํ•˜์—ฌ ์‹คํ–‰
  • SQL์˜ ๋ถ„๋ฅ˜
    • ๋ฐ์ดํ„ฐ ์ •์˜์–ด(DDL; Data Definition Language) : ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ณ  ๋ณ€๊ฒฝ๏น’์‚ญ์ œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•จ
    • ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด(DML; Data Manipulation Language) : ํ…Œ์ด๋ธ”์— ์ƒˆ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ฑฐ๋‚˜, ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •๏น’์‚ญ์ œ๏น’๊ฒ€์ƒ‰ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•จ
    • ๋ฐ์ดํ„ฐ ์ œ์–ด์–ด(DCL; Data Control Language) : ๋ณด์•ˆ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ ‘๊ทผ ๋ฐ ์‚ฌ์šฉ ๊ถŒํ•œ์„ ์‚ฌ์šฉ์ž๋ณ„๋กœ ๋ถ€์—ฌํ•˜๊ฑฐ๋‚˜ ์ทจ์†Œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ์–ธ์–ด
      • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ์ฃผ๋กœ ์‚ฌ์šฉ

[02] SQL์„ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ์ •์˜

  • 2.1 SQL์˜ ๋ฐ์ดํ„ฐ ์ •์˜ ๊ธฐ๋Šฅ
    • ํ…Œ์ด๋ธ” ์ƒ์„ฑ, ์ƒ์„ฑ๋œ ํ…Œ์ด๋ธ” ๊ตฌ์กฐ์˜ ๋ณ€๊ฒฝ, ํ…Œ์ด๋ธ” ์‚ญ์ œ
  • 2.2 ํ…Œ์ด๋ธ”์˜ ์ƒ์„ฑ : CREATE TABLE
    CREATE TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„ (
        1. ์†์„ฑ_์ด๋ฆ„ ๋ฐ์ดํ„ฐ_ํƒ€์ž… [NOT NULL] [DEFAULT ๊ธฐ๋ณธ_๊ฐ’]
        2. [PRIMARY KEY (์†์„ฑ_๋ฆฌ์ŠคํŠธ)]
        3. [UNIQUE (์†์„ฑ_๋ฆฌ์ŠคํŠธ)]
        4 .[FOREIGN KEY (์†์„ฑ_๋ฆฌ์ŠคํŠธ) REFERENCES ํ…Œ์ด๋ธ”_์ด๋ฆ„(์†์„ฑ_๋ฆฌ์ŠคํŠธ)] [ON DELETE ์˜ต์…˜] [ON UPDATE ์˜ต์…˜]
        4. [CONSTRAINT ์ด๋ฆ„] [CHECK(์กฐ๊ฑด)]
    );
    /* 
    1. ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ์†์„ฑ์˜ ์ด๋ฆ„๊ณผ ๋ฐ์ดํ„ฐ ํƒ€์ž…, ๊ธฐ๋ณธ์ ์ธ ์ œ์•ฝ ์‚ฌํ•ญ ์ •์˜
    2. ๊ธฐ๋ณธํ‚ค ์ •์˜
    3. ๋Œ€์ฒดํ‚ค ์ •์˜
    4. ์™ธ๋ž˜ํ‚ค ์ •์˜
    5. ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ์œ„ํ•œ ์ œ์•ฝ์กฐ๊ฑด ์ •์˜
    []๋กœ ํ‘œ์‹œํ•œ ํ•ญ๋ชฉ์€ ์˜ต์…˜์ด๊ธฐ์— ์ƒ๋žต ๊ฐ€๋Šฅ
    */
    • ๋ชจ๋“  SQL ๋ฌธ์€ ์„ธ๋ฏธ์ฝœ๋ก (;) ์œผ๋กœ ๋ฌธ์žฅ ๋์„ ํ‘œ์‹œํ•จ
    • SQL ๋ฌธ์€ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š์Œ
    • ์†์„ฑ์˜ ์ •์˜
      • ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ์†์„ฑ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ์„ ํƒํ•œ ํ›„์—๋Š” ์†์„ฑ์˜ ๋„ ๊ฐ’ ํ—ˆ์šฉ ์—ฌ๋ถ€์™€ ๊ธฐ๋ณธ ๊ฐ’ ํ•„์š” ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •
      • CREATE TABLE ๋ฌธ์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•˜๋Š” ์†์„ฑ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋„ ๊ฐ’์ด ํ—ˆ์šฉ๋จ
        • NOT NULL : ์†์„ฑ์ด ๋„ ๊ฐ’์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•˜๋Š” ํ‚ค์›Œ๋“œ
          • (EX) ๊ณ ๊ฐ์•„์ด๋”” VARCHAR(20) NOT NULL
        • DEFAULT : ์†์„ฑ์˜ ๊ธฐ๋ณธ ๊ฐ’์„ ์ง€์ •ํ•˜๋Š” ํ‚ค์›Œ๋“œ
          • (EX) ์ ๋ฆฝ๊ธˆ INT DEFAULT 0
          • (EX) ๋‹ด๋‹น์ž VARCHAR(10) DEFAULT '๋ฐฉ๊ฒฝ์•„'
            • ๋ฌธ์ž์—ด์ด๋‚˜ ๋‚ ์งœ ๋ฐ์ดํ„ฐ๋Š” ์ž‘์€๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์„œ ํ‘œํ˜„
            • ์ž‘์€๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์ธ ๋ฌธ์ž์—ด์€ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•จ
      • ์†์„ฑ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…
    • ํ‚ค์˜ ์ •์˜
      • PRIMARY KEY : ๊ธฐ๋ณธํ‚ค ์ง€์ •
        • (EX) PRIMARY KEY(๊ณ ๊ฐ์•„์ด๋””)
        • (EX) PRIMARY KEY(์ฃผ๋ฌธ๊ณ ๊ฐ, ์ฃผ๋ฌธ์ œํ’ˆ)
      • UNIQUE : ๋Œ€์ฒดํ‚ค ์ง€์ •
        • ๋Œ€์ฒดํ‚ค๋กœ ์ง€์ •๋œ ์†์„ฑ์˜ ๊ฐ’์€ ์œ ์ผ์„ฑ์„ ๊ฐ€์ง€๊ณ  ๊ธฐ๋ณธํ‚ค๋กœ ์ง€์ •๋œ ์†์„ฑ๊ณผ ๋‹ฌ๋ฆฌ ๋„ ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Œ
        • (EX) UNIQUE(๊ณ ๊ฐ์ด๋ฆ„)
      • FOREIGN KEY : ์™ธ๋ž˜ํ‚ค ์ง€์ •
        • ์™ธ๋ž˜ํ‚ค๊ฐ€ ์–ด๋–ค ํ…Œ์ด๋ธ”์˜ ๋ฌด์Šจ ์†์„ฑ์„ ์ฐธ์กฐํ•˜๋Š”์ง€ REFERENCES ํ‚ค์›Œ๋“œ ๋‹ค์Œ์— ๋ช…ํ™•ํžˆ ์ œ์‹œ
        • ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด ์œ ์ง€๋ฅผ ์œ„ํ•ด ์ฐธ์กฐ๋˜๋Š” ํ…Œ์ด๋ธ”์—์„œ ํŠœํ”Œ์„ ์‚ญ์ œํ•  ๋•Œ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์„ ์ง€์ •ํ•˜๋Š” ์˜ต์…˜
          ON DELETE NO ACTION : ํŠœํ”Œ์„ ์‚ญ์ œํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•จ
          ON DELETE CASCADE : ๊ด€๋ จ ํŠœํ”Œ์„ ํ•จ๊ป˜ ์‚ญ์ œ
          ON DELETE SET NULL : ๊ด€๋ จ ํŠœํ”Œ์˜ ์™ธ๋ž˜ํ‚ค ๊ฐ’์„ NULL๋กœ ๋ณ€๊ฒฝ
          ON DELETE SET DEFAULT : ๊ด€๋ จ ํŠœํ”Œ์˜ ์™ธ๋ž˜ํ‚ค ๊ฐ’์„ ๋ฏธ๋ฆฌ ์ง€์ •ํ•œ ๊ธฐ๋ณธ ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ
        • ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด ์œ ์ง€๋ฅผ ์œ„ํ•ด ์ฐธ์กฐ๋˜๋Š” ํ…Œ์ด๋ธ”์—์„œ ํŠœํ”Œ์„ ๋ณ€๊ฒฝํ•  ๋•Œ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์„ ์ง€์ •ํ•˜๋Š” ์˜ต์…˜
          ON UPDATE NO ACTION : ํŠœํ”Œ์„ ๋ณ€๊ฒฝํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•จ
          ON UPDATE CASCADE : ๊ด€๋ จ ํŠœํ”Œ์—์„œ ์™ธ๋ž˜ํ‚ค ๊ฐ’์„ ํ•จ๊ป˜ ๋ณ€๊ฒฝ
          ON UPDATE SET NULL : ๊ด€๋ จ ํŠœํ”Œ์˜ ์™ธ๋ž˜ํ‚ค ๊ฐ’์„ NULL๋กœ ๋ณ€๊ฒฝ
          ON UPDATE SET DEFAULT : ๊ด€๋ จ ํŠœํ”Œ์˜ ์™ธ๋ž˜ํ‚ค ๊ฐ’์„ ๋ฏธ๋ฆฌ ์ง€์ •ํ•œ ๊ธฐ๋ณธ ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝ
          • (EX) FOREIGN KEY(์†Œ์†๋ถ€์„œ) REFERENCES ๋ถ€์„œ(๋ถ€์„œ๋ฒˆํ˜ธ) ON DELETE CASCADE ON UPDATE CASCADE
          • (EX) FOREIFGN KEY(์†Œ์†๋ถ€์„œ) REFERENCES ๋ถ€์„œ(๋ถ€์„œ๋ฒˆํ˜ธ)
    • ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด์˜ ์ •์˜
      • CHECK : ํŠน์ • ์†์„ฑ์— ๋Œ€ํ•œ ์ œ์•ฝ์กฐ๊ฑด ์ง€์ •
        • ํ…Œ์ด๋ธ”์—์„œ ํ•ญ์ƒ ์ •ํ™•ํ•˜๊ณ  ์œ ํšจํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ์œ„ํ•œ ์ œ์•ฝ์กฐ๊ฑด์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•
        • CONSTRAINT ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ๊ณ ์œ ์˜ ์ด๋ฆ„ ๋ถ€์—ฌ ๊ฐ€๋Šฅ
  • 2.3 ํ…Œ์ด๋ธ”์˜ ๋ณ€๊ฒฝ : ALTER TABLE
    • ์ƒˆ๋กœ์šด ์†์„ฑ ์ถ”๊ฐ€, ๊ธฐ์กด ์†์„ฑ ์‚ญ์ œ, ์ƒˆ๋กœ์šด ์ œ์•ฝ์กฐ๊ฑด ์ถ”๊ฐ€, ๊ธฐ์กด ์ œ์•ฝ์กฐ๊ฑด ์‚ญ์ œ ๋“ฑ์ด ๊ฐ€๋Šฅ
    • ์ƒˆ๋กœ์šด ์†์„ฑ์˜ ์ถ”๊ฐ€
      ALTER TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„
          ADD ์†์„ฑ_์ด๋ฆ„ ๋ฐ์ดํ„ฐ_ํƒ€์ž… [NOT NULL] [DEFAULT ๊ธฐ๋ณธ_๊ฐ’];
    • ๊ธฐ์กด ์†์„ฑ์˜ ์‚ญ์ œ
      ALTER TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„ DROP COLUMN ์†์„ฑ_์ด๋ฆ„;
      • ๋งŒ์•ฝ ์‚ญ์ œํ•  ์†์„ฑ๊ณผ ๊ด€๋ จ๋œ ์ œ์•ฝ์กฐ๊ฑด์ด ์กด์žฌํ•˜๊ฑฐ๋‚˜ ์ด ์†์„ฑ์„ ์ฐธ์กฐํ•˜๋Š” ๋‹ค๋ฅธ ์†์„ฑ์ด ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์†์„ฑ์„ ์‚ญ์ œํ•  ์ˆ˜ ์—†์Œ
      • ๊ด€๋ จ๋œ ์ œ์•ฝ์กฐ๊ฑด์ด๋‚˜ ์ฐธ์กฐํ•˜๋Š” ๋‹ค๋ฅธ ์†์„ฑ์„ ๋จผ์ € ์‚ญ์ œํ•ด์•ผ ํ•จ
    • ์ƒˆ๋กœ์šด ์ œ์•ฝ์กฐ๊ฑด์˜ ์ถ”๊ฐ€
      ALTER TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„ ADD CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด_์ด๋ฆ„ ์ œ์•ฝ์กฐ๊ฑด_๋‚ด์šฉ;
    • ๊ธฐ์กด ์ œ์•ฝ์กฐ๊ฑด์˜ ์‚ญ์ œ
      ALTER TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„ DROP CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด_์ด๋ฆ„;
  • 2.4 ํ…Œ์ด๋ธ”์˜ ์‚ญ์ œ : DROP TABLE
    DROP TABLE ํ…Œ์ด๋ธ”_์ด๋ฆ„;
    • ์‚ญ์ œํ•  ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜๋Š” ํ…Œ์ด๋ธ”์ด ์žˆ๋‹ค๋ฉด ์‚ญ์ œ๊ฐ€ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์Œ
      • ์‚ญ์ œํ•˜๊ณ ์ž ํ•˜๋Š” ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜๋Š” ์™ธ๋ž˜ํ‚ค ์ œ์•ฝ์กฐ๊ฑด์„ ๋จผ์ € ์‚ญ์ œํ•ด์•ผ ํ•จ

[03] SQL์„ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘

  • 3.1 SQL์˜ ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ๊ธฐ๋Šฅ

    • ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰, ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ์‚ฝ์ž…, ๋ฐ์ดํ„ฐ ์ˆ˜์ •, ๋ฐ์ดํ„ฐ ์‚ญ์ œ
  • 3.2 ๋ฐ์ดํ„ฐ์˜ ๊ฒ€์ƒ‰ : SELECT

    • ๊ธฐ๋ณธ ๊ฒ€์ƒ‰

      SELECT [ ALL | DISTINCT ] ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”_๋ฆฌ์ŠคํŠธ;
      • SELECT ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์‹ถ์€ ์†์„ฑ์˜ ์ด๋ฆ„์„ ์ฝค๋งˆ(,) ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ฐจ๋ก€๋กœ ๋‚˜์—ด
      • FROM ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์‹ถ์€ ์†์„ฑ์ด ์žˆ๋Š” ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์„ ์ฝค๋งˆ(,) ๋กœ ์ฐจ๋ก€๋กœ ๋‚˜์—ด
      • ํ…Œ์ด๋ธ”์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๊ณ  ์ˆ˜ํ–‰ ๊ฒฐ๊ณผ๋„ ํ…Œ์ด๋ธ”
      • ALL : ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์ด ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋„๋ก ์ง€์ •, ์ƒ๋žต ๊ฐ€๋Šฅ
      • DISTINCT : ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์—์„œ ํŠœํ”Œ์˜ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•˜๊ณ  ํ•œ ๋ฒˆ์”ฉ๋งŒ ์ถœ๋ ฅ๋˜๋„๋ก ์ง€์ •
      • ๋ชจ๋“  ์†์„ฑ ๊ฒ€์ƒ‰ ์‹œ * ์‚ฌ์šฉ ๊ฐ€๋Šฅ
      • AS : ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์— ์ถœ๋ ฅ๋˜๋Š” ์†์„ฑ์˜ ์ด๋ฆ„์„ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊พธ์–ด ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ์Œ
        • ์ง€์ •ํ•˜๋Š” ์ด๋ฆ„์— ๊ณต๋ฐฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ์˜ค๋ผํด์—์„œ๋Š” ํฐ๋”ฐ์˜ดํ‘œ, MS SQL ์„œ๋ฒ„์—์„œ๋Š” ์ž‘์€๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์ค˜์•ผ ํ•จ
        • ์ƒ๋žต ๊ฐ€๋Šฅ
    • ์‚ฐ์ˆ ์‹์„ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

      • SELECT ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ์‚ฐ์ˆ ์‹ ์ œ์‹œ
        • ์‚ฐ์ˆ ์‹ : ์†์„ฑ์˜ ์ด๋ฆ„๊ณผ $+, -, *, /$ ๋“ฑ์˜ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž, ์ƒ์ˆ˜๋กœ ๊ตฌ์„ฑ
      • ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์—์„œ๋งŒ ๊ณ„์‚ฐํ•œ ๊ฒฐ๊ณผ ๊ฐ’์„ ์ถœ๋ ฅ
        • ์†์„ฑ์˜ ๊ฐ’์ด ์‹ค์ œ๋กœ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹˜
    • ์กฐ๊ฑด ๊ฒ€์ƒ‰

      SELECT [ ALL | DISTINCT ] ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”_๋ฆฌ์ŠคํŠธ
      [ WHERE ์กฐ๊ฑด ];
      • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ๊ฒ€์ƒ‰
      • WHERE ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ๋น„๊ต ์—ฐ์‚ฐ์ž์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•œ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์„ ์ œ์‹œ
        • ์กฐ๊ฑด์—์„œ ๋น„๊ต ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด ์ˆซ์ž๋ฟ ์•„๋‹ˆ๋ผ ๋ฌธ์ž๋‚˜ ๋‚ ์งœ ๊ฐ’์„ ๋น„๊ตํ•  ์ˆ˜ ์žˆ์Œ
        • ์กฐ๊ฑด์—์„œ ์ˆซ์ž ๊ฐ’์€ ๊ทธ๋Œ€๋กœ ์ž‘์„ฑํ•ด๋„ ๋˜์ง€๋งŒ ๋ฌธ์ž๋‚˜ ๋‚ ์งœ ๊ฐ’์€ ์†์„ฑ์˜ ์ด๋ฆ„๊ณผ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž‘์€๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์•ผ ํ•จ
    • LIKE๋ฅผ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

      • LIKE ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ถ€๋ถ„์ ์œผ๋กœ ์ผ์น˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰
        • ๊ฒ€์ƒ‰ ์กฐ๊ฑด์„ ์ •ํ™•ํžˆ ์•Œ๋ฉด $=$ ์—ฐ์‚ฐ์ž๋กœ ํ‘œํ˜„
      • ๋ฌธ์ž์—ด์„ ์ด์šฉํ•˜๋Š” ์กฐ๊ฑด์—๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
      • LIKE ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํ˜ธ
        ๊ธฐํ˜ธ ์„ค๋ช…
        % 0๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž (๋ฌธ์ž์˜ ๋‚ด์šฉ๊ณผ ๊ฐœ์ˆ˜๋Š” ์ƒ๊ด€ ์—†์Œ)
        _ 1๊ฐœ์˜ ๋ฌธ์ž (๋ฌธ์ž์˜ ๋‚ด์šฉ์€ ์ƒ๊ด€ ์—†์Œ)
      • (EX)
        ์‚ฌ์šฉ ์˜ˆ ์„ค๋ช…
        LIKE '๋ฐ์ดํ„ฐ%' ๋ฐ์ดํ„ฐ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ฌธ์ž์—ด (๋ฐ์ดํ„ฐ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๊ธธ์ด๋Š” ์ƒ๊ด€ ์—†์Œ)
        LIKE '%๋ฐ์ดํ„ฐ ๋ฐ์ดํ„ฐ๋กœ ๋๋‚˜๋Š” ๋ฌธ์ž์—ด (๋ฐ์ดํ„ฐ๋กœ ๋๋‚˜๊ธฐ๋งŒ ํ•˜๋ฉด ๊ธธ์ด๋Š” ์ƒ๊ด€ ์—†์Œ)
        LIKE '%๋ฐ์ดํ„ฐ%' ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋œ ๋ฌธ์ž์—ด
        LIKE '๋ฐ์ดํ„ฐ___' ๋ฐ์ดํ„ฐ๋กœ ์‹œ์ž‘ํ•˜๋Š” 6์ž ๊ธธ์ด์˜ ๋ฌธ์ž์—ด
        LIKE '__ํ•œ%' ์„ธ ๋ฒˆ์งธ ๊ธ€์ž๊ฐ€ 'ํ•œ'์ธ ๋ฌธ์ž์—ด
    • NULL์„ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

      • IS NULL : ๊ฒ€์ƒ‰ ์กฐ๊ฑด์—์„œ ํŠน์ • ์†์„ฑ์˜ ๊ฐ’์ด ๋„ ๊ฐ’์ธ์ง€๋ฅผ ๋น„๊ต
      • IS NOT NULL : ๊ฒ€์ƒ‰ ์กฐ๊ฑด์—์„œ ํŠน์ • ์†์„ฑ์˜ ๊ฐ’์ด ๋„ ๊ฐ’์ด ์•„๋‹Œ์ง€๋ฅผ ๋น„๊ต
      • ๊ฒ€์ƒ‰ ์กฐ๊ฑด์—์„œ ๋„ ๊ฐ’์€ ๋‹ค๋ฅธ ๊ฐ’๊ณผ ํฌ๊ธฐ๋ฅผ ๋น„๊ตํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ๋ชจ๋‘ ๊ฑฐ์ง“์ด ๋จ
    • ์ •๋ ฌ ๊ฒ€์ƒ‰

      SELECT [ ALL | DISTINCT ] ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”_๋ฆฌ์ŠคํŠธ
      [ WHERE ์กฐ๊ฑด ]
      [ ORDER BY ์†์„ฑ_๋ฆฌ์ŠคํŠธ [ ASC | DESC ] ];
      • ORDER BY : ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์˜ ๋‚ด์šฉ์„ ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅ
      • ORDER BY ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ์ •๋ ฌ ๊ธฐ์ค€์ด ๋˜๋Š” ์†์„ฑ ์ง€์ •
        • ASC(๊ธฐ๋ณธ) : ์˜ค๋ฆ„์ฐจ์ˆœ / DESC : ๋‚ด๋ฆผ์ฐจ์ˆœ
        • ๋„ ๊ฐ’์€ ์˜ค๋ฆ„์ฐจ์ˆœ์—์„œ๋Š” ๋งจ ๋งˆ์ง€๋ง‰์— ์ถœ๋ ฅ๋˜๊ณ  ๋‚ด๋ฆผ์ฐจ์ˆœ์—์„œ๋Š” ๋งจ ๋จผ์ € ์ถœ๋ ฅ๋จ
        • ์—ฌ๋Ÿฌ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์ •๋ ฌํ•˜๋ ค๋ฉด ์ •๋ ฌ ๊ธฐ์ค€์ด ๋˜๋Š” ์†์„ฑ์„ ์ฐจ๋ก€๋กœ ์ œ์‹œ
    • ์ง‘๊ณ„ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

      • ํŠน์ • ์†์„ฑ ๊ฐ’์„ ํ†ต๊ณ„์ ์œผ๋กœ ๊ณ„์‚ฐํ•œ ๊ฒฐ๊ณผ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์œ„ํ•ด ์ง‘๊ณ„ ํ•จ์ˆ˜ ์ด์šฉ

      • ์ง‘๊ณ„ ํ•จ์ˆ˜(aggregate function)

        ํ•จ์ˆ˜ ์˜๋ฏธ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์†์„ฑ์˜ ํƒ€์ž…
        COUNT ์†์„ฑ ๊ฐ’์˜ ๊ฐœ์ˆ˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ
        MAX ์†์„ฑ ๊ฐ’์˜ ์ตœ๋Œ“๊ฐ’ ๋ชจ๋“  ๋ฐ์ดํ„ฐ
        MIN ์†์„ฑ ๊ฐ’์˜ ์ตœ์†Ÿ๊ฐ’ ๋ชจ๋“  ๋ฐ์ดํ„ฐ
        SUM ์†์„ฑ ๊ฐ’์˜ ํ•ฉ๊ณ„ ์ˆซ์ž ๋ฐ์ดํ„ฐ
        AVG ์†์„ฑ ๊ฐ’์˜ ํ‰๊ท  ์ˆซ์ž ๋ฐ์ดํ„ฐ
        • ์—ด ํ•จ์ˆ˜(column function) ๋ผ๊ณ ๋„ ํ•จ
        • ๊ฐœ์ˆ˜, ํ•ฉ๊ณ„, ํ‰๊ท , ์ตœ๋Œ“๊ฐ’, ์ตœ์†Ÿ๊ฐ’์˜ ๊ณ„์‚ฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณต
        • ์ฃผ์˜ ์‚ฌํ•ญ
          • ์ง‘๊ณ„ ํ•จ์ˆ˜๋Š” ๋„์ธ ์†์„ฑ ๊ฐ’์€ ์ œ์™ธํ•˜๊ณ  ๊ณ„์‚ฐ
          • ์ง‘๊ณ„ ํ•จ์ˆ˜๋Š” WHERE ์ ˆ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ณ  SELECT ์ ˆ์ด๋‚˜ HAVING ์ ˆ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
    • ๊ทธ๋ฃน๋ณ„ ๊ฒ€์ƒ‰

      SELECT [ ALL | DISTINCT ] ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”_๋ฆฌ์ŠคํŠธ
      [ WHERE ์กฐ๊ฑด ]
      [ GROUP BY ์†์„ฑ_๋ฆฌ์ŠคํŠธ [ HAVING ์กฐ๊ฑด ] ]
      [ ORDER BY ์†์„ฑ_๋ฆฌ์ŠคํŠธ [ ASC | DESC ] ];
      • GROUP BY : ํŠน์ • ์†์„ฑ์˜ ๊ฐ’์ด ๊ฐ™์€ ํŠœํ”Œ์„ ๋ชจ์•„ ๊ทธ๋ฃน์„ ๋งŒ๋“ค๊ณ , ๊ทธ๋ฃน๋ณ„๋กœ ๊ฒ€์ƒ‰
        • ๊ทธ๋ฃน์„ ๋‚˜๋ˆ„๋Š” ๊ธฐ์ค€์ด ๋˜๋Š” ์†์„ฑ์„ ์ง€์ •ํ•จ
      • ๊ทธ๋ฃน์— ๋Œ€ํ•œ ์กฐ๊ฑด์„ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด GROUP BY ํ‚ค์›Œ๋“œ๋ฅผ HAVING ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ
      • ๊ทธ๋ฃน์„ ๋‚˜๋ˆ„๋Š” ๊ธฐ์ค€์ด ๋˜๋Š” ์†์„ฑ์„ SELECT ์ ˆ์—๋„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ
    • ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ์กฐ์ธ ๊ฒ€์ƒ‰

      • ์กฐ์ธ ๊ฒ€์ƒ‰ : ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ฒƒ
      • ์กฐ์ธ ์†์„ฑ : ์กฐ์ธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ์†์„ฑ
        • ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด, ์กฐ์ธ ์†์„ฑ์˜ ์ด๋ฆ„์€ ๋‹ฌ๋ผ๋„ ๋˜์ง€๋งŒ ๋„๋ฉ”์ธ์€ ๋ฐ˜๋“œ์‹œ ๊ฐ™์•„์•ผ ํ•จ
        • ํ…Œ์ด๋ธ”์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์™ธ๋ž˜ํ‚ค๋ฅผ ์กฐ์ธ ์†์„ฑ์œผ๋กœ ์ด์šฉ
      • FROM ์ ˆ์— ๊ฒ€์ƒ‰์— ํ•„์š”ํ•œ ๋ชจ๋“  ํ…Œ์ด๋ธ”์„ ๋‚˜์—ด
      • WHERE ์ ˆ์—๋Š” ์กฐ์ธ ์†์„ฑ์˜ ๊ฐ’์ด ๊ฐ™์•„์•ผ ํ•จ์„ ์˜๋ฏธํ•˜๋Š” ์กฐ์ธ ์กฐ๊ฑด์„ ์ œ์‹œ
      • ์ด๋ฆ„์ด ๊ฐ™์€ ์†์„ฑ์ด ์„œ๋กœ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ์กด์žฌํ•  ์ˆ˜๋„ ์žˆ๊ธฐ์— ์†์„ฑ์˜ ์ด๋ฆ„ ์•ž์— ํ•ด๋‹น ์†์„ฑ์ด ์†Œ์†๋œ ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์„ ํ‘œ์‹œํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์ข‹์Œ
      SELECT ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”1 INNER JOIN ํ…Œ์ด๋ธ”2 ON ์กฐ์ธ์กฐ๊ฑด
      [ WHERE ๊ฒ€์ƒ‰์กฐ๊ฑด ]
      • ํ‘œ์ค€ SQL์—์„œ๋Š” INNER JOIN ๊ณผ ON ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์ œ๊ณตํ•จ
      SELECT ์†์„ฑ_๋ฆฌ์ŠคํŠธ
      FROM ํ…Œ์ด๋ธ”1 LEFT | RIGHT | FULL OUTER JOIN ํ…Œ์ด๋ธ”2 ON ์กฐ์ธ ์กฐ๊ฑด
      [ WHERE ๊ฒ€์ƒ‰์กฐ๊ฑด ];
      • ์™ธ๋ถ€ ์กฐ์ธ ๊ฒ€์ƒ‰
        • ์กฐ์ธ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š” ํŠœํ”Œ์— ๋Œ€ํ•ด์„œ๋„ ๊ฒ€์ƒ‰์„ ์ˆ˜ํ–‰
        • OUTER JOIN ๊ณผ ON ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉ
        • ๋ชจ๋“  ํŠœํ”Œ์„ ๊ฒ€์ƒ‰ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” ํ…Œ์ด๋ธ”์ด ๋ฌด์—‡์ด๋ƒ์— ๋”ฐ๋ผ ์™ผ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ, ์˜ค๋ฅธ์ชฝ ์™ธ๋ถ€ ์กฐ์ธ, ์™„์ „ ์™ธ๋ถ€ ์กฐ์ธ์œผ๋กœ ๋ถ„๋ฅ˜
728x90
๋ฐ˜์‘ํ˜•

'Development Study' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Lecture] DataBase - Summary (04~06)  (0) 2023.04.12
[Lecture] Operating System with Ubuntu - Day 4  (0) 2023.04.10
[Lecture] Data Communication - Day 5~6  (0) 2023.04.06
[Lecture] DataBase - Day 5  (0) 2023.04.03
[Lecture] Operating System with Ubuntu - Day 2~3  (0) 2023.03.29
Comments