[SQL] 05-ORDER BY

๊น€์ง€ํ˜„ยท2024๋…„ 6์›” 7์ผ

SQL

๋ชฉ๋ก ๋ณด๊ธฐ
4/16

๐Ÿ“‚ ORDER BY

๐Ÿ“ ์ •๋ ฌ
SELECT ๋ฌธ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํŠน์ • ์ปฌ๋Ÿผ์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ํ˜น์€ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ

  • ASC(Ascending) : ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ(๊ธฐ๋ณธ๊ฐ’)
  • DESC(Descending) : ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ
SELECT column1, column2, ...
FROM tablename
ORDER BY column1, column2, ... ASC | DESC;

โœ” WHERE์ ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ WHERE์ ˆ ์ดํ›„ ORDER BY ์‚ฌ์šฉ


๐Ÿ“‚ ์‹ค์Šต ํ™˜๊ฒฝ ๊ตฌ์„ฑ

๐Ÿ“ ์‹ค์Šต table ์ƒ์„ฑ

CREATE TABLE celeb
(
    ID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    NAME varchar(32) NOT NULL DEFAULT '',
    BIRTHDATY date,
    AGE int,
    SEX char(1),
    JOB_TITLE varchar(32),
    AGENCY varchar(32)
);

๐Ÿ“ ์‹ค์Šต data ์ถ”๊ฐ€

INSERT INTO celeb VALUES (1, '์•„์ด์œ ', '1993-05-16', 'F', '๊ฐ€์ˆ˜, ํƒค๋ŸฐํŠธ', 'EDAM์—”ํ„ฐํ…Œ์ธ๋จผํŠธ');
INSERT INTO celeb VALUES (2, '์ด๋ฏธ์ฃผ', '1994-09-23', 28, 'F', '๊ฐ€์ˆ˜', '์šธ๋ฆผ์—”ํ„ฐํ…Œ์ธ๋จผํŠธ');
INSERT INTO celeb VALUES (3, '์†ก๊ฐ•', '1994-04-23', 28, 'M', 'ํƒค๋ŸฐํŠธ', '๋‚˜๋ฌด์—‘ํ„ฐ์Šค');
...

์˜ˆ์ œ1) celeb ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ๋‚˜์ด์ˆœ์œผ๋กœ ์กฐํšŒ

SELECT age, name
FROM celeb
ORDER BY age ASC;

์˜ˆ์ œ2) celeb ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ์—ญ์ˆœ(๋‚ด๋ฆผ์ฐจ์ˆœ)์œผ๋กœ ์กฐํšŒ

SELECT age, name
FROM celeb
ORDER BY age DESC;

์˜ˆ์ œ3) celeb ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ๋‚˜์ด์™€ ์ด๋ฆ„์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ์กฐํšŒ

SELECT age, name
FROM celeb
ORDER BY age, name;
-- ASC ์ƒ๋žตํ•ด๋„ ๊ธฐ๋ณธ์€ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ

+------+--------+
| age | name    |
+------+--------+
|   23 | ์ด์ˆ˜ํ˜„ |
|   28 | ์†ก๊ฐ•   |
|   28 | ์ด๋ฏธ์ฃผ |
|   29 | ์•„์ด์œ  |
|   41 | ๊ฐ•๋™์› |
|   48 | ์ฐจ์Šน์› |
|   50 | ์œ ์žฌ์„ |
+------+--------+

์˜ˆ์ œ4) celeb ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ๋‚˜์ด์˜ ์—ญ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋’ค ์ด๋ฆ„์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ์กฐํšŒ

SELECT age, name
FROM celeb
ORDER BY age DESC, name ASC;

+------+--------+
| age  | name   |
+------+--------+
|   50 | ์œ ์žฌ์„ |
|   48 | ์ฐจ์Šน์› |
|   41 | ๊ฐ•๋™์› |
|   29 | ์•„์ด์œ  |
|   28 | ์†ก๊ฐ•   |
|   28 | ์ด๋ฏธ์ฃผ |
|   23 | ์ด์ˆ˜ํ˜„ |
+------+--------+

0๊ฐœ์˜ ๋Œ“๊ธ€