MySQL

MySQL의 오름차순(asc), 내림차순(desc) 정렬하기(order by)

HooSL 2021. 12. 8. 11:33

예시 문)

INSERT INTO books (title, author_fname, author_lname, released_year, stock_quantity, pages)
VALUES
('The Namesake', 'Jhumpa', 'Lahiri', 2003, 32, 291),
('Norse Mythology', 'Neil', 'Gaiman',2016, 43, 304),
('American Gods', 'Neil', 'Gaiman', 2001, 12, 465),
('Interpreter of Maladies', 'Jhumpa', 'Lahiri', 1996, 97, 198),
('A Hologram for the King: A Novel', 'Dave', 'Eggers', 2012, 154, 352),
('The Circle', 'Dave', 'Eggers', 2013, 26, 504),
('The Amazing Adventures of Kavalier & Clay', 'Michael', 'Chabon', 2000, 68, 634),
('Just Kids', 'Patti', 'Smith', 2010, 55, 304),
('A Heartbreaking Work of Staggering Genius', 'Dave', 'Eggers', 2001, 104, 437),
('Coraline', 'Neil', 'Gaiman', 2003, 100, 208),
('What We Talk About When We Talk About Love: Stories', 'Raymond', 'Carver', 1981, 23, 176),
("Where I'm Calling From: Selected Stories", 'Raymond', 'Carver', 1989, 12, 526),
('White Noise', 'Don', 'DeLillo', 1985, 49, 320),
('Cannery Row', 'John', 'Steinbeck', 1945, 95, 181),
('Oblivion: Stories', 'David', 'Foster Wallace', 2004, 172, 329),
('Consider the Lobster', 'David', 'Foster Wallace', 2005, 92, 343),
('10% Happier', 'Dan', 'Harris', 2014, 29, 256),
('fake_book', 'Freida', 'Harris', 2001, 287, 428),
('Lincoln In the Bardo', 'George', 'Saunders', 2017, 156, 375);

 

정렬을 할때엔 order by를 사용합니다.

오름차순은 asc입니다.

order by 정렬을 원하는 컬럼명 asc; 이렇게 사용해주시면 됩니다.

기본값이 오름차순으로 되어있기 때문에 asc를 안적어주셔도 오름차순으로 출력이 됩니다.

select author_lname
from books
order by author_lname asc; -- 기본값이 오름차순이기 때문에 asc를 안적어도 오름차순이 된다.

 

 

내림차순은 desc입니다.

order by 정렬을 원하는 컬럼명 desc; 이렇게 사용해주시면 됩니다.

select author_lname
from books
order by author_lname desc; -- 내림차순으로 할땐 desc는 꼭 적어줘샤 한다.

 

 

정렬을 할때 컬럼명 대신 숫자로 설정해줄수도 있습니다.

select title, author_lname, pages
from books
order by 1;

1=title , 2=author_fname , 3=author_lname 이렇게 사용해도 됩니다.

해당 숫자의 컬럼을 오름차순으로 해준다.