Search
Duplicate

Select

νƒœκ·Έ
쿼리
Codecademy
Select
SELECT λ₯Ό μ΄μš©ν•˜μ—¬ νŠΉμ •ν•œ column 만 선택할 수 μžˆλ‹€.
SELECT column1, column2 FROM table_name;
SQL
볡사
As
AS λŠ” column μ΄λ‚˜ table 의 이름을 λ°”κΏ€ λ•Œ μ“°λŠ” ν‚€μ›Œλ“œμ΄λ‹€. AS λ₯Ό μ“Έ λ•Œ λ‹€μŒ 두가지λ₯Ό μ£Όμ˜ν•˜μž
(1) 항상 κ·Έλž˜μ•Ό ν•˜λŠ”κ±΄ μ•„λ‹ˆμ§€λ§Œ 별칭을 β€˜ ’ 둜 λ¬ΆλŠ” 것이 μ’‹λ‹€.
(2) AS λ₯Ό μ‚¬μš©ν–ˆλ‹€κ³  table μ—μ„œμ˜ column 이름이 λ°”λ€ŒλŠ” 것이 μ•„λ‹ˆλ‹€. κ²°κ³Όμ°½μ—μ„œλ§Œ λ³„μΉ­μœΌλ‘œ λ‚˜νƒ€λ‚˜κ³  ν‘œμ—μ„œλŠ” κ·ΈλŒ€λ‘œμ΄λ‹€.
Distinct
DISTINCT ν‚€μ›Œλ“œλ₯Ό μ“Έ λ•Œμ™€ μ•ˆμ“Έ λ•Œμ˜ μ½”λ“œλ₯Ό λΉ„κ΅ν•˜μ—¬ μ‰½κ²Œ μ΄ν•΄ν•΄λ³΄μž
[DISTINCT ]
SELECT tools FROM inventory;
SQL
볡사
tools
Hammer
Nails
Nails
Nails
[DISTINCT ]
SELECT DISTINCT tools FROM inventory;
SQL
볡사
tools
Hammer
Nails
Where
νŠΉμ •ν•œ 정보λ₯Ό μ–»κΈ° μœ„ν•΄ μ‚¬μš©ν•˜λŠ” ν‚€μ›Œλ“œμ΄λ‹€.
μ–΄λ–»κ²Œ μž‘λ™ν•˜λŠ” κ²ƒμΌκΉŒ?
WHERE ν‚€μ›Œλ“œκ°€ μ‚¬μš©λœ μ ˆμ— μžˆλŠ” 쑰건을 λ§Œμ‘±ν•˜λŠ” row κ°’λ§Œ μΆ”λ €λ‚Έλ‹€.
SELECT * FROM movies WHERE imdb_rating > 8;
SQL
볡사
WHERE μ ˆμ— μ‚¬μš©λ˜λŠ” μ—°μ‚°μžλ“€
= != > < >= <=
Like
LIKE λŠ” λΉ„μŠ·ν•œ 값을 λΉ„κ΅ν•˜κΈΈ μ›ν• λ•Œ 쓰인닀. 예λ₯Όλ“€μ–΄ Se7en κ³Ό Seven μ΄λΌλŠ” μ˜ν™”λ₯Ό ν¬ν•¨ν•˜λŠ” table 이 μžˆλ‹€κ³  κ°€μ •ν•΄λ³΄μž. λ§Žμ€ μ˜ν™”λ“€ 쀑 이 μ˜ν™”λ“€λ§Œ λΉ„κ΅ν•˜κ³  싢을 λ•Œ μ•„λž˜μ™€ 같이 μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ©΄ λœλ‹€.
SELECT * FROM movies WHERE name LIKE 'Se_en';
SQL
볡사
_ λŠ” μ—¬κΈ°μ—μ„œ κ°œλ³„ 문자λ₯Ό λŒ€μ²΄ν•  수 μžˆμŒμ„ μ˜λ―Έν•œλ‹€. μœ„μ˜ μ˜ˆμ‹œμ—μ„œλŠ” 7 κ³Ό v λ₯Ό λŒ€μ²΄ν•  수 μžˆλ‹€λŠ” 뜻이 λ˜κ² λ‹€
% λŠ” LIKE 와 μ‚¬μš©ν•˜λŠ” λ˜λ‹€λ₯Έ wildcard character 이닀. μ•„λž˜ μ˜ˆμ‹œλ₯Ό 보자.
SELECT * FROM movies WHERE name LIKE 'A%';
SQL
볡사
% 의 μ‚¬μš©
A% λŠ” ν‘œμ˜ λͺ¨λ“  μ˜ν™”λ“€ 쀑 β€˜A’ 둜 μ‹œμž‘ν•˜λŠ” μ˜ν™”λ“€μ„ 뽑아낸닀.
%a λŠ” ν‘œμ˜ λͺ¨λ“  μ˜ν™”λ“€ 쀑 β€˜a’ 둜 λλ‚˜λŠ” μ˜ν™”λ“€μ„ 뽑아낸닀.
% λ₯Ό μ•žλ’€μ— μ‚¬μš©ν•  μˆ˜λ„ μžˆλ‹€.
SELECT * FROM movies WHERE name LIKE '%man%';
SQL
볡사
μœ„μ˜ 쿼리 결과둜 β€˜Batman’ κ³Ό β€˜Man of steel’ 이 λ‘˜λ‹€ λ‚˜νƒ€λ‚  수 μžˆλ‹€.
Is Null
table 에 값이 μ—†λŠ” κ²½μš°κ°€ μžˆλ‹€. μ΄λŸ¬ν•œ μ•Œλ €μ§€μ§€ μ•Šμ€ 값듀은 NULL 둜 ν‘œν˜„μ΄ λœλ‹€. 이 NULL κ°’μ—λŠ” = 와 != 와 같은 μ—°μ‚°μžλ₯Ό μ΄μš©ν•  수 μ—†λ‹€. λŒ€μ‹ μ— μ•„λž˜μ™€ 같은 μ—°μ‚°μžλ₯Ό μ΄μš©ν•œλ‹€.
IS NULL
IS NOT NULL
이λ₯Ό μ‚¬μš©ν•œ μ˜ˆμ œλŠ” μ•„λž˜μ™€ κ°™λ‹€.
SELECT name FROM movies WHERE imdb_rating IS NOT NULL;
SQL
볡사
Between
BETWEEN 은 WHERE μ ˆμ—μ„œ λ²”μœ„λ₯Ό ν¬ν•¨ν•˜λŠ” κ²°κ³Όλ₯Ό λ‚˜νƒ€λ‚΄μ•Όν•  λ•Œ 쓰인닀. λ²”μœ„μ—λŠ” μˆ«μžλ‚˜, 문자, λ‚ μ§œκ°€ 쓰인닀.
SELECT * FROM movies WHERE year BETWEEN 1990 AND 1999;
SQL
볡사
SELECT * FROM movies WHERE name BETWEEN 'A' AND 'J';
SQL
볡사
β€˜J’ λΌλŠ” μ˜ν™”λŠ” λ²”μœ„μ— ν¬ν•¨λ˜μ§€λ§Œ, β€˜Jaws’ λΌλŠ” μ˜ν™”λŠ” 포함
And
두가지 μ΄μƒμ˜ 쑰건의 ꡐ집합을 λ§Œμ‘±ν•˜λŠ” κ°’λ“€λ§Œ 뽑아내기 μœ„ν•΄ μ‚¬μš©ν•œλ‹€.
SELECT * FROM movies WHERE year BETWEEN 1990 AND 1999 AND genre = 'romance';
SQL
볡사
Or
AND 와 λ‹€λ₯΄κ²Œ 두가지 μ΄μƒμ˜ 쑰건 쀑 λ‚˜λ§Œ λ§Œμ‘±ν•˜λŠ” 결과도 뽑아낸닀. (합집합)
Order By
ORDER BY λ₯Ό μ΄μš©ν•΄ 정렬을 ν•  수 μžˆλ‹€. (default : μ˜€λ¦„μ°¨μˆœ μ •λ ¬) 두가지 정렬방법이 μžˆλŠ” 데, μ•„λž˜μ™€ 같은 ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•œλ‹€.
DESC λŠ” λ‚΄λ¦Όμ°¨μˆœ 정렬을 ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.
ASC λŠ” μ˜€λ¦„μ°¨μˆœ 정렬을 ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.
WHERE κ³Ό 같이 쓰일 λ•ŒλŠ” 항상 WHERE 뒀에 μ¨μ•Όν•œλ‹€.
Limit
LIMIT 은 결과둜 λ‚˜νƒ€λ‚  rows 의 μ΅œλŒ€ 개수λ₯Ό λͺ…μ‹œν•  λ•Œ 쓰인닀. μœ„μΉ˜λŠ” 항상 쿼리의 끝에 μœ„μΉ˜ν•΄μ•Όν•œλ‹€.
( λͺ¨λ“  SQL database μ—μ„œ μ§€μ›λ˜μ§€λŠ” μ•ŠλŠ”λ‹€.)
Case
CASE λŠ” λ‹€λ₯Έ 결과듀을 λ§Œλ“€ λ•Œ 쓰인닀. (= if-then)
SELECT name, CASE WHEN imdb_rating > 8 THEN 'Fantastic' WHEN imdb_rating > 6 THEN 'Poorly Received' ELSE 'Avoid at All Costs' END AS 'Review' // Rename as 'Review' FROM movies;
SQL
볡사