ํฌ์Šค์ฝ”X์ฝ”๋”ฉ์˜จ 7๊ธฐ 5์ฃผ์ฐจ ch1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

2023. 5. 29. 00:17ใ†Study_Develop/ํฌ์Šค์ฝ” X ์ฝ”๋”ฉ์˜จ ๋ถ€ํŠธ์บ ํ”„

๋ฐ˜์‘ํ˜•

5์ฃผ์ฐจ ๋ถ€ํ„ฐ๋Š” 

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์ˆ˜์—…์„ ๋‚˜๊ฐ”๋‹ค!

 

์ž‘๋…„์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ „๊ณต์ˆ˜์—…

์ƒ๊ฐ ์—†์ด๋“ฃ๋˜ ๋•Œ๊ฐ€.. 

์กฐ๊ธˆ์€ ์ƒ๊ฐ์ด ๋‚˜๊ณ ..

์–ผํ•์–ผํ• ๊ธฐ์–ต ๋‚˜์ง€๋งŒ

๋จธ๋ฆฌ์—์„œ ํฌ๋ฏธํ•˜๊ฒŒ ์‚ฌ๋ผ์ง„ ๊ทธ..

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค..

mysql..

 

ํ•™์› ์ˆ˜์—…, ์ž๋ฃŒ๋กœ๋Š”

์ด ๋ฐฉ๋Œ€ํ•œ sql์„ ์ดํ•ดํ•˜๋Š”๋ฐ

ํ•œ๊ณ„๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•„

์ž‘๋…„ ๊ต์ˆ˜๋‹˜์ด ์ฃผ์‹  ์ž๋ฃŒ๋ฅผ 

๋‹ค์‹œ๊ธˆ ๊บผ๋‚ด ๋“ค์—ˆ๋‹ค..

 

์ƒˆ๋ก์ƒˆ๋ก ์ƒ๊ฐ์ด ๋‚˜๋Š”๊ตฐ..

๊ทธ๋•Œ ์ œ๋Œ€๋กœ ์ข€ ๊ณต๋ถ€ ํ• ๊ป„..

ํ›„ํšŒํ•ด๋ณด์ง€๋งŒ

์ด๋ฏธ ๋Šฆ์—ˆ๋‹ค

์ด์ œ๋ผ๋„ ์ œ๋Œ€๋กœ ํ•˜์ž ใ…Ž

 


SQL์ด๋ž€

 

- SQL์€ ๋น„์ ˆ์ฐจ์  ์–ธ์–ด์ด๋ฏ€๋กœ 

์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋ฐ” (what)๋งŒ ๋ช…์‹œํ•˜๋ฉฐ, 

์›ํ•˜๋Š” ๊ฒƒ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•(how)์€

๋ช…์‹œํ•  ์ˆ˜ ์—†๋‹ค.

 

- DBMS๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ 

SQL๋ฌธ์„ ๋ฒˆ์—ญํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์š”๊ตฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๋Š”๋ฐ ํ•„์š”ํ•œ

๋ชจ๋“  ๊ณผ์ •์„ ๋‹ด๋‹นํ•œ๋‹ค.

 

- ์ž์—ฐ์–ด์— ๊ฐ€๊นŒ์šด ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ

์งˆ์˜๋ฅผ ํ‘œํ˜„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

SQL์˜ ๋ถ„๋ฅ˜>

- ๋ฐ์ดํ„ฐ ์ •์˜์–ด (DDL)

: ํ…Œ์ด๋ธ” ์ƒ์„ฑํ•˜๊ณ  ๋ณ€๊ฒฝ, ์ œ๊ฑฐํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณต

 

- ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด(DML)

: ํ…Œ์ด๋ธ”์— ์ƒˆ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ฑฐ๋‚˜, 

ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ 

์ˆ˜์ •, ์‚ญ์ œ, ๊ฒ€์ƒ‰ ํ•˜๋Š” ๊ธฐ๋Šฅ ์ œ๊ณต

 

- ๋ฐ์ดํ„ฐ ์ œ์–ด์–ด(DCL)

: ๋ณด์•ˆ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ

์ ‘๊ทผ ๋ฐ ์‚ฌ์šฉ ๊ถŒํ•œ์„ ์‚ฌ์šฉ์ž ๋ณ„๋กœ

๋ถ€์—ฌํ•˜๊ฑฐ๋‚˜ ์ทจ์†Œํ•˜๋Š” ๊ธฐ๋Šฅ ์ œ๊ณต

 

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

SQL์˜ ๋ฐ์ดํ„ฐ ์ •์˜ ๊ธฐ๋Šฅ

: ํ…Œ์ด๋ธ” ์ƒ์„ฑ(CREATE), ๋ณ€๊ฒฝ(ALTER), ์‚ญ์ œ(DROP)

 

๐Ÿ“Œ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

- CREATE TABLE ๋ฌธ

: []์˜ ๋‚ด์šฉ์€ ์ƒ๋žต์ด ๊ฐ€๋Šฅํ•˜๋‹ค

: SQL ์งˆ์˜๋ฌธ์€ ์„ธ๋ฏธ์ฝœ๋ก (;)์œผ๋กœ ๋ฌธ์žฅ์˜ ๋์„ ํ‘œ์‹œํ•˜๊ณ ,

๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š”๋‹ค.

1. ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฐ ์†์„ฑ์˜ ์ด๋ฆ„,

๋ฐ์ดํ„ฐ ํƒ€์ž…, ๊ธฐ๋ณธ ์ œ์•ฝ ์‚ฌํ•ญ ์ •์˜

2. ๊ธฐ๋ณธํ‚ค ์ •์˜

3. ๋Œ€์ฒดํ‚ค ์ •์˜

4. ์™ธ๋ž˜ํ‚ค ์ •์˜

5. ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์— ์˜ํ•œ ์ œ์•ฝ ์กฐ๊ฑด ์ •์˜

 

ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์†์„ฑ>

NOT NULL

: ์†์„ฑ์ด ๋„๊ฐ’์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Œ

 

DEFAULT

: ์†์„ฑ์˜ ๊ธฐ๋ณธ๊ฐ’์„ ์ง€์ •ํ•˜๋Š” ํ‚ค์›Œ๋“œ

 

 

ํ…Œ์ด๋ธ” ์ƒ์„ฑ ํ‚ค>

 

 โ—PRIMARY KEY

: ๊ธฐ๋ณธํ‚ค๋ฅผ ์ง€์ •ํ•˜๋Š” ํ‚ค์›Œ๋“œ

 

โ—UNIQUE

: ๋Œ€์ฒดํ‚ค๋ฅผ ์ง€์ •ํ•˜๋Š”ํ‚ค์›Œ๋“œ

: ๋Œ€์ฒดํ‚ค๋กœ ์ง€์ •๋˜๋Š” ์†์„ฑ์˜ ๊ฐ’์€ ์œ ์ผ์„ฑ์„ ๊ฐ€์ง€๋ฉฐ,

๊ธฐ๋ณธํ‚ค์™€ ๋‹ฌ๋ฆฌ ๋„ ๊ฐ’์„ ํ˜€์šฉ๋œ๋‹ค

UNIQUE(๊ณ ๊ฐ์ด๋ฆ„)

 

โ—FOREIGN KEY 

: ์™ธ๋ž˜ํ‚ค๋ฅผ ์ง€์ •ํ•˜๋Š” ํ‚ค์›Œ๋“œ

: ์™ธ๋ž˜ํ‚ค๊ฐ€ ์–ด๋–ค ํ…Œ์ด๋ธ”์˜ ์†์„ฑ์„ ์ฐธ์กฐํ•˜๋Š”์ง€

REFERENCES ํ‚ค์›Œ๋“œ ๋‹ค์Œ์— ์ œ์‹œ

: ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด ์œ ์ง€๋ฅผ ์œ„ํ•ด ์ฐธ์กฐ๋˜๋Š” ํ…Œ์ด๋ธ”์—์„œ

ํˆฌํ”Œ ์‚ญ์ œ ์‹œ ์ฒ˜๋ฆฌ๋ฐฉ๋ฒ•์„ ์ง€์ •ํ•˜๋Š” ์˜ต์…˜

 

 

โ—CHECK

: ํ…Œ์ด๋ธ”์— ์ •ํ™•ํ•˜๊ณ  ์œ ํšจํ•œ ๋ฐ์ดํ„ฐ๋ฅผ

์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํŠน์ • ์†์„ฑ์— ๋Œ€ํ•œ ์ œ์•ฝ์กฐ๊ฑด์„ ์ง€์ •ํ•œ๋‹ค.

 : CONSTRAINT ํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜

๊ณ ์œ ์˜ ์ด๋ฆ„์„ ๋ถ€์—ฌํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

CHECK (์žฌ๊ณ ๋Ÿ‰>=0 AND ์žฌ๊ณ ๋Ÿ‰ <=10000)

 

 

 

๊ณ ๊ฐํ…Œ์ด๋ธ” ์ƒ์„ฑ

CREATE TABLE customer(
    customer_id VARCHAR2(20) NOT NULL,
    customer_name VARCHAR2(10) NOT NULL,
    age NUMBER,
    grade VARCHAR2(10) NOT NULL,
    job_title VARCHAR2(20),
    saved_money NUMBER DEFAULT 0,
    PRIMARY KEY (customer_id)
)

-> ๊ณ ๊ฐ ์•„์ด๋”” ์†์„ฑ์ด ๊ธฐ๋ณธํ‚ค๋‹ค.

-> ๊ณ ๊ฐ ์ด๋ฆ„๊ณผ ๋“ฑ๊ธ‰ ์†์„ฑ์€ ๊ฐ’์„ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•˜๊ณ ,

์ ๋ฆฝ๊ธˆ ์†์„ฑ์„ ์ž…๋ ฅํ•˜์ง€ ์•Š์œผ๋ฉด

0์ด ๊ธฐ๋ณธ์œผ๋กœ ์ž…๋ ฅ๋œ๋‹ค.

 

 

์ œํ’ˆ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

 

CREATE TABLE product(
    product_no VARCHAR2(5) NOT NULL,
    product_name VARCHAR2(20),
    stock NUMBER,
    unit_price NUMBER,
    manufacturer VARCHAR2(20),
    PRIMARY KEY (product_no),
    CHECK (stock >= AND stock <=10000)
);

-> ์ œํ’ˆ ํ…Œ์ด๋ธ”์€ ์ œํ’ˆ๋ฒˆํ˜ธ, ์ œํ’ˆ ๋ช…, ์žฌ๊ณ ๋Ÿ‰, ๋‹จ๊ฐ€,

์ œ์กฐ ์—…์ฒด ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋˜๊ณ ,

์ œํ’ˆ ๋ฒˆํ˜ธ ์†์„ฑ์ด ๊ธฐ๋ณธํ‚ค์ด๋‹ค.

-> ์žฌ๊ณ ๋Ÿ‰์ด ํ•ญ์ƒ 0๊ฐœ ์ด์ƒ 

10000๊ฐœ ์ดํ•˜๋ฅผ ์œ ์ง€ํ•œ๋‹ค.

 

 

์ฃผ๋ฌธ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

 

CREATE TABLE porder(
    order_no VARCHAR2(5) NOT NULL,
    customer_id VARCHAR2(20),
    product_no VARCHAR2(5),
    quantity NUMBER,
    destination VARCHAR2(30),
    order_date DATE,
    PRIMARY KEY (order_no),
    FOREIGN KEY (customer_id) REFERENCES customer (customer_id),
    FOREIGN KEY (product_no) REFERENCES product(product_no)
);

-> ์ฃผ๋ฌธ ๊ณ ๊ฐ ์†์„ฑ์ด ๊ณ ๊ฐ ํ…Œ์ด๋ธ”์˜ ๊ณ ๊ฐ์•„์ด๋”” ์†์„ฑ์„ 

์ฐธ์กฐํ•˜๋Š” ์™ธ๋ž˜ํ‚ค์ด๊ณ , 

์ฃผ๋ฌธ ์ œํ’ˆ ์†์„ฑ์ด ์ œํ’ˆ ํ…Œ์ด๋ธ”์˜ ์ œํ’ˆ ๋ฒˆํ˜ธ ์†์„ฑ์„

์ฐธ์กฐํ•˜๋Š” ์™ธ๋ž˜ํ‚ค์ด๋‹ค.

 

๋ฐฐ์†ก์—…์ฒด ํ…Œ์ด๋ธ” ์ƒ์„ฑ

 

CREATE TABLE shipping_company(
    company_no VARCHAR2(5) NOT NULL,
    company_name VARCHAR2(20),
    address VARCHAR2(100),
    telephone VARCHAR2(20),
    PRIMARY KEY (company_no)
);

-> ์—…์ฒด๋ฒˆํ˜ธ ์†์„ฑ์ด ๊ธฐ๋ณธํ‚ค

 

 

๐Ÿ“Œํ…Œ์ด๋ธ” ๋ณ€๊ฒฝ

 

ALTER TABLE ๋ฌธ

: ์ƒˆ๋กœ์šด ์†์„ฑ์˜ ์ถ”๊ฐ€, ๊ธฐ์กด ์†์„ฑ์˜ ์‚ญ์ œ,

์ƒˆ๋กœ์šด ์ œ์•ฝ ์กฐ๊ฑด์˜ ์ถ”๊ฐ€/์‚ญ์ œ ๋“ฑ์ด ๊ฐ€๋Šฅ

 

 

ex. 

ALTER TABLE customer ADD join_data DATE;

-> ๊ณ ๊ฐ ํ…Œ์ด๋ธ”์— ๊ฐ€์ž… ๋‚ ์งœ ์†์„ฑ ์ถ”๊ฐ€

 

๊ธฐ์กด ์†์„ฑ์˜ ์‚ญ์ œ

ex.

ALTER TABLE customer DROP COLUMN join_data;

-> ๊ณ ๊ฐํ…Œ์ด๋ธ”์˜ ๊ฐ€์ž… ๋‚ ์งœ ์†์„ฑ ์‚ญ์ œ

 

 

์ƒˆ๋กœ์šด ์ œ์•ฝ ์กฐ๊ฑด์˜ ์ถ”๊ฐ€

ALTER TABLE customer ADD CONSTRAINT chk_age CHECK(age >= 20);

 

-> ๊ณ ๊ฐ ํ…Œ์ด๋ธ”์— 20์„ธ ์ด์ƒ์˜ ๊ณ ๊ฐ๋งŒ

๊ฐ€์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด์„ ์ถ”๊ฐ€

 

 

๊ธฐ์กด ์ œ์•ฝ์กฐ๊ฑด์˜ ์‚ญ์ œ

 

ALTER TABLE customer DROP CONSTRAINT chk_age;

-> ๊ณ ๊ฐ ํ…Œ์ด๋ธ”์— 20์„ธ ์ด์ƒ์˜ ๊ณ ๊ฐ๋งŒ ๊ฐ€์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š”

๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด์„ ์‚ญ์ œํ•œ๋‹ค.

 

 

๐Ÿ“Œ ํ…Œ์ด๋ธ” ์‚ญ์ œ

DROP TABLE shipping_company;

-> ๋ฐฐ์†ก์—…์ฒด ํ…Œ์ด๋ธ”์„ ์‚ญ์ œํ•œ๋‹ค.

 

๋งŒ์•ฝ, ์‚ญ์ œํ•  ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜๋Š” ํ…Œ์ด๋ธ”์ด ์žˆ๋‹ค๋ฉด?

- ํ…Œ์ด๋ธ” ์‚ญ์ œ๊ฐ€ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์Œ

- ๊ด€๋ จ๋œ ์™ธ๋ž˜ํ‚ค ์ œ์•ฝ์กฐ๊ฑด์„ ๋จผ์ € ์‚ญ์ œํ•จ

 

 

 

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

 

๋ฐ์ดํ„ฐ ์กฐ์ž‘ ๊ธฐ๋Šฅ

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

 

๐Ÿ“Œ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰

SELECT ๋ฌธ

: ํ…Œ์ด๋ธ”์—์„œ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.

 

1. ๊ธฐ๋ณธ ๊ฒ€์ƒ‰

SELECT [ALL : DISTINCT] ์†์„ฑ_๋ฆฌ์ŠคํŠธ
  FROM ํ…Œ์ด๋ธ”_๋ฆฌ์ŠคํŠธ;

- ALL 

: ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์ดํŠœํ”Œ์˜ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋„๋ก ์ง€์ •

: ์ƒ๋žต ๊ฐ€๋Šฅ

 

DISTINCT 

: ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์ด ํˆฌํ”Œ์˜ ์ค‘๋ณต์„ 

ํ—ˆ์šฉํ•˜์ง€ ์•Š๋„๋ก ์ง€์ •

 

AS

: ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์—์„œ 

์†์„ฑ์˜ ์ด๋ฆ„์„ ๋ฐ”๊พธ์–ด ์ถœ๋ ฅ ๊ฐ€๋Šฅํ•˜๋‹ค

: ์ƒˆ๋กœ์šด ์ด๋ฆ„์— ๊ณต๋ฐฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด

ํฐ๋”ฐ์˜ดํ‘œ๋‚˜ ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

: ASํ‚ค์›Œ๋“œ๋Š” ์ƒ๋žต ๊ฐ€๋Šฅ

 

SELECT unit_price AS ๊ฐ€๊ฒฉ

 

 

2. ์‚ฐ์ˆ ์‹์„ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

- ์†์„ฑ์˜ ์ด๋ฆ„๊ณผ  +, -, *, / ๋“ฑ์˜ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž์™€

์ƒ์ˆ˜๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.

- ์†์„ฑ์˜ ๊ฐ’์ด ์‹ค์ œ๋กœ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๊ณ ,

๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์—์„œ๋งŒ ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ ๊ฐ’ ์ถœ๋ ฅ

 

SELECT product_name, unit_price + 500 AS "์กฐ์ • ๋‹จ๊ฐ€"
  FROM product;

 

-> ์ œํ’ˆ ํ…Œ์ด๋ธ”์—์„œ ์ œํ’ˆ๋ช…๊ณผ ๋‹จ๊ฐ€ ์†์„ฑ์„ ๊ฒ€์ƒ‰ํ•˜๋˜,

๋‹จ๊ฐ€์— 500์›์„ ๋”ํ•ด "์กฐ์ • ๋‹จ๊ฐ€"๋ผ๋Š” ์ƒˆ์ด๋ฆ„์œผ๋กœ ์ถœ๋ ฅ

 

3. ์กฐ๊ฑด ๊ฒ€์ƒ‰

 

 

-> whereํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ ๋น„๊ต์—ฐ์‚ฐ์ž์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•œ

๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ œ์‹œํ•œ๋‹ค.

 

4. LIKE๋ฅผ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

 

- LIKEํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ถ€๋ถ„์ ์œผ๋กœ ์ผ์น˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰

 

 

 

5. NULL์„ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

 

- IS NULLํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด 

ํŠน์ • ์†์„ฑ์˜ ๊ฐ’์ด ๋„ ๊ฐ’์ธ์ง€๋ฅผ ๋น„๊ต

- ๊ฒ€์ƒ‰ ์กฐ๊ฑด์—์„œ ๋„ ๊ฐ’์€ ๋‹ค๋ฅธ ๊ฐ’๊ณผ ํฌ๊ธฐ๋ฅผ ๋น„๊ตํ•˜๋ฉด

๊ฒฐ๊ณผ๊ฐ€ ๋ชจ๋‘ ๊ฑฐ์ง“์ด ๋œ๋‹ค.

 

SELECT customer_name
 FROM customer
WHERE age IS NULL;

 

-> ๊ณ ๊ฐ ํ…Œ์ด๋ธ”์—์„œ ๋‚˜์ด๊ฐ€ ์ž…๋ ฅ๋˜์ง€ ์•Š์€

๊ณ ๊ฐ์˜ ๊ณ ๊ฐ์ด๋ฆ„์„ ๊ฒ€์ƒ‰

 

 

 

6. ์ •๋ ฌ๊ฒ€์ƒ‰

 

- ORDER BY ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด

๊ฒฐ๊ณผ ํ…Œ์ด๋ธ” ๋‚ด์šฉ์„ ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅ

-ORDER BYํ‚ค์›Œ๋“œ์™€ ํ•จ๊ป˜ 

์ •๋ ฌ ๊ธฐ์ค€์ด ๋˜๋Š” ์†์„ฑ๊ณผ ์ •๋ ฌ ๋ฐฉ์‹์„ ์ง€์ •

 

 

SELECT customer_name, grade, age
 FROM customer
 ORDER BY age DESC;

 

-> ๊ณ ๊ฐํ…Œ์ด๋ธ”์—์„œ ๊ณ ๊ฐ์ด๋ฆ„, ๋“ฑ๊ธ‰, ๋‚˜์ด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋˜,

๋‚˜์ด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๊ฒƒ

 

 

7. ์ง‘๊ณ„ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ ๊ฒ€์ƒ‰

 

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

์ง‘๊ณ„ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ๋‹ค

- ์ง‘๊ณ„ ํ•จ์ˆ˜, ์—ด ํ•จ์ˆ˜

(๊ฐœ์ˆ˜, ํ•ฉ๊ณ„, ํ‰๊ท , ์ตœ๋Œ“๊ฐ’, ์ตœ์†Ÿ๊ฐ’์˜ ๊ณ„์‚ฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณต)

 

์ง‘๊ณ„ ํ•จ์ˆ˜๋Š” WHERE์ ˆ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ณ , 

SELECT์ ˆ์ด๋‚˜ HAVING์ ˆ์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

 

SELECT COUNT(DISTINCT manufacturer) AS "์ œ์กฐ์—…์ฒด ์ˆ˜"
  FROM product;

-> ์ œํ’ˆ ํ…Œ์ด๋ธ”์—์„œ ์ œ์กฐ์—…์ฒด์˜ ์ˆ˜๋ฅผ ๊ฒ€์ƒ‰

 

8. ๊ทธ๋ฃน๋ณ„ ๊ฒ€์ƒ‰

 

 


์กฐ์ธ ๊ฒ€์ƒ‰

 

์กฐ์ธ ๊ฒ€์ƒ‰

: ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•˜์—ฌ

๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ฒƒ

 

์กฐ์ธ ์†์„ฑ 

: ์กฐ์ธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด

ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ์†์„ฑ

 

์กฐ๊ฑด1. ์—ฐ๊ฒฐํ•˜๋ ค๋Š” ํ…Œ์ด๋ธ” ๊ฐ„์—

์กฐ์ธ์†์„ฑ์˜ ์ด๋ฆ„์€ ๋‹ฌ๋ผ๋„ ๋˜์ง€๋งŒ

๋„๋ฉ”์ธ์€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.

 

์กฐ๊ฑด2. ์ผ๋ฐ˜์ ์œผ๋กœ ์™ธ๋ž˜ํ‚ค๋ฅผ ์กฐ์ธ ์†์„ฑ์œผ๋กœ ์ด์šฉํ•œ๋‹ค.

 

 

์กฐ์ธ ๊ฒ€์ƒ‰

ํŠน์ง• 1. FROM ์ ˆ์— 

๊ฒ€์ƒ‰์— ํ•„์š”ํ•œ ๋ชจ๋“  ํ…Œ์ด๋ธ”์„ ๋‚˜์—ดํ•œ๋‹ค.

 

ํŠน์ง• 2. WHERE์ ˆ์— ์กฐ์ธ ์†์„ฑ์˜ ๊ฐ’์ด

๊ฐ™์•„์•ผ ํ•จ์„ ์˜๋ฏธํ•˜๋Š” ์กฐ์ธ์กฐ๊ฑด์„ ์ œ์‹œํ•œ๋‹ค.

 

ํŠน์ง• 3. ๊ฐ™์€ ์ด๋ฆ„์˜ ์†์„ฑ์ด 

์„œ๋กœ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ์กด์žฌํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 

์†์„ฑ ์ด๋ฆ„ ์•ž์— ํ•ด๋‹น ์†์„ฑ์ด ์†Œ์†๋œ ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์„ ํ‘œ์‹œํ•œ๋‹ค.

ex. ์ฃผ๋ฌธ.์ฃผ๋ฌธ๊ณ ๊ฐ

 

 

 


 

 

์กฐ์ธ์— ๊ด€ํ•œ ๋‚ด์šฉ์€ 

๋„ˆ๋ฌด ๋งŽ์•„์„œ 

๋”ฐ๋กœ ์ž‘์„ฑ ์˜ˆ์ •..

 

 

์ด๋Ÿฐ์ €๋Ÿฐ ์ผ ๋•Œ๋ฌธ์—

๊ณต๋ถ€๋ฅผ 3์ผ๊ฐ„ ์‰ฌ์—ˆ๋”๋‹ˆ

์™œ์ด๋ฅด์ผ€ ํ•˜๊ธฐ ์‹ซ์€์ง€ ..

 

Aใ…..๊ณต๋ถ€ ํ•˜๊ธฐ ์‹คใ…Œr ..

but..ํ•ด์•ผํ•˜๋Š” ์ผ..

๋‚ด์ผ๋ถ€ํ„ฐ๋Š” ์ •๋ง..

์—ด์‹ฌํžˆ ..โญ