SQL 1. SELECT๋ฌธ์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๊ฒ์
๐ SQL๋ฌธ ์์ฑ
- ๋์๋ฌธ์ ๊ตฌ๋ถX
- ํ์ค ๋๋ ์ฌ๋ฌ์ค์ ์
๋ ฅ๊ฐ๋ฅ
- ํค์๋ ์ฝ์ด ํ๊ธฐX, ์ฌ๋ฌ์ค์ ๊ฑธ์ณ ์
๋ ฅX
- ์ (clause)์ ๋๊ฐ ๋ณ๋์ ์ค์ ์
๋ ฅ
๐ select๋ฌธ์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๊ฒ์
๊ธฐ๋ณธ SELECT๋ฌธ
SELECT * | [DISTINCT] column | expreession [alias], ...
FROM table;
1. ํ์ํ ์ด์ ์ง์ ํ๋ SELECT ์
* : ๋ชจ๋ ์ด ์ ํ
[DISTINCT] : ์ค๋ณต์ ๋ฐฉ์ง (ํ์์)
column/expression : ์ด๋ฆ ์ง์ ๋ ์ด ๋๋ ํํ์ ์ ํ
[alias] : ์ ํํ ์ด์ ๋ค๋ฅธ ๋ณ์นญ ์ง์ (ํ์์)
2. SELECT์ ์ ๋์ด๋ ์ด์ ํฌํจํ๋ ํ ์ด๋ธ์ ์๋ณํ๋ FROM์
table : ์ด์ด ํฌํจ๋ ํ ์ด๋ธ ์ง์
3. ์ฐ์ ํํ์
: SQL๋ฌธ์ ๋ชจ๋ ์ (FROM์ ์ ์ธ)์์ ์ฐ์ ์ฐ์ฐ์ ์ฌ์ฉ ๊ฐ๋ฅ. (date๋ฐ timestamp ๋ฐ์ดํฐ ํ์์ ๋ํ๊ธฐ/๋นผ๊ธฐ๋ง ๊ฐ๋ฅ)
SELECT last_name, salary, salary+300
FROM employees;
4. NULL๊ฐ ์ ์
: ์ฌ์ฉํ ์ ์๊ฑฐ๋, ํ ๋น๋์ง ์๊ฑฐ๋, ์ ์ ์๊ฑฐ๋, ์ ์ฉํ ์ ์๋ ๊ฐ.
0์ด๋ ๊ณต๋ฐฑ์ ์๋!! (0์ ์ซ์, ๊ณต๋ฐฑ์ ๋ฌธ์์)
& ๋๊ฐ์ ํฌํจํ๋ ์ฐ์ ์์ ๋๋ก ๊ณ์ฐ๋จ..
5. ์ด Alias ์ ์
: ์ด ๋จธ๋ฆฌ๊ธ์ ์ด๋ฆ์ ๋ณ๊ฒฝ. ๊ณ์ฐ์ ์ ์ฉ.
>> ์ด ์ด๋ฆ ๋ฐ๋ก ๋ค์ ๋์ด OR ์ด์ด๋ฆ๊ณผ ๋ณ์นญ ์ฌ์ด์ ASํค์๋๋ฅผ ๋ฃ๊ธฐ
& ๊ณต๋ฐฑ์ด๋ ํน์๋ฌธ์ ํฌํจ, ๋์๋ฌธ์ ๊ตฌ๋ถํ๋ ๊ฒฝ์ฐ " " ์์ ๋ฃ๊ธฐ.
SELECT last_name AS name
FROM employees;
SELECT last_name "Name"
FROM employees;
6. ์ฐ๊ฒฐ ์ฐ์ฐ์
: ์ด ๋๋ ๋ฌธ์์ด์ ๋ค๋ฅธ ์ด์ ์ฐ๊ฒฐ ||
& ๋ฌธ์์ด์ NULL๊ฐ์ ๊ฒฐํฉํ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ๋ ๋ฌธ์์ด
SELECT last_name||job_id AS "Employees"
FROM employees;
7. ๋ฆฌํฐ๋ด ๋ฌธ์์ด ์ฌ์ฉ
: ๋ฌธ์, ์ซ์ ๋๋ ๋ ์ง
๋ ์ง ๋ฐ ๋ฌธ์ ๋ฆฌํฐ๋ด ๊ฐ์ ' '์ผ๋ก ๋ฌถ๊ธฐ.
๊ฐ ๋ฌธ์์ด์ ๋ฐํ๋๋ ๊ฐ ํ์ ํ ๋ฒ ์ถ๋ ฅ๋จ.
SELECT last_name || 'is a '||job_id AS "Employee Details"
FROM employees;
8. ๋์ฒด ์ธ์ฉ(q) ์ฐ์ฐ์
: ์์ ์ ๋ฐ์ดํ ๊ตฌ๋ถ์๋ฅผ ์ง์ . ๊ตฌ๋ถ์๋ฅผ ์์๋ก ์ ํํจ.
SELECT department_name || q' [Department's Manager Id: ]'|| manager_id AS "Department and Manager"
FROM departments;
** ์ฃผ์!
๋ฆฌํฐ๋ด ๋ฌธ์์ด ์ฌ์ฉ์ ๋ฆฌํฐ๋ด ๊ฐ ์์ 's (apostrophe s) ๊ฐ ์์ ๊ฒฝ์ฐ...
>> ERROR: ORA-01756: quoted string not properly terminated
> ๊ทธ๋ฌ๋ฏ๋ก ๋์ฒด ์ธ์ฉ ์ฐ์ฐ์ q๊ฐ ํ์ํจ.
9. ์ค๋ณต ํ(rows)
: Query ๊ฒฐ๊ณผ์ ๊ธฐ๋ณธ ํ์๋ ์ค๋ณต ํ์ ํฌํจํ ๋ชจ๋ ํ์ด๋ฏ๋ก
> DISTINCT ํค์๋๋ฅผ ์ฌ์ฉ. (=UNIQUE)
SELECT DISTINCT department_id
FROM employees;
'Programming > SQL, Oracle' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
SQL 3. ๋จ์ผ ํ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒฐ๊ณผ๋ฌผ ๋ณ๊ฒฝ (0) | 2023.10.12 |
---|---|
SQL 2. ๋ฐ์ดํฐ ์ ํ ๋ฐ ์ ๋ ฌ (WHERE/ORDER BY) (0) | 2023.09.04 |
์ค๋ผํด ๋ฐ์ดํฐ๋ฒ ์ด์ค (0) | 2023.08.22 |
SQL*plus (2) | 2023.08.21 |
Oracle ์ ์ ํ๊ธฐ (0) | 2023.08.21 |