반응형
< MySQL 데이터 중복 제거, 정렬 키워드 (distinct, order by) >
# 이전 생성한 스키마(DB)와 테이블로 이어서 진행
# 참고 : https://sorktjrrb.tistory.com/105
# 새로운 학습을 위해서 기존 데이터에 데이터 추가
insert into books
(title, author_fname, author_lname, released_year, stock_quantity,
pages)
values
('10% Happier', 'Dan', 'Harris', 2014, 29, 256),
('fake_book', 'Freida', 'Harris', 2001, 287, 428),
('Lincoln In The Bardo', 'George', 'Saunders', 2017, 111, 388);
# 중복제거 distinct
-- 데이터를 유니크하게 만드는 키워드, distinct => 키워드는 () 없이, ()가 있는건 함수
-- 즉, CRUD => insert, select, update, delete 등은 모두 키워드다.
-- author_lname 이 카테고리컬 데이터다. 유니크한 데이터를 확인하자.
select distinct author_lname
from books;
-- fname 과 lname 을 합친, full_name 으로 중복제거해서 확인해보자.
select distinct concat(author_fname, ' ',author_lname) as full_name
from books;
# 데이터 정렬하기 order by (위치가 중요!)
-- 정렬 : order by 키워드 => 위치가 중요!
-- author_lname 으로 정렬
select *
from books
order by author_lname;
-- full_name 으로 정렬
select * , concat(author_fname, ' ', author_lname) as full_name
from books
order by full_name;
# 내림차순 desc, 오름차순 asc
-- full_name 내림차순으로 정렬 (내림차순 desc, 오름차순 asc)
select * , concat(author_fname, ' ', author_lname) as full_name
from books
order by full_name desc ;
-- author_fname 으로 오름차순 정렬하고, pages 는 내림차순으로 정렬하세요.
-- 데이터 컬럼은 모두 보여주세요.
select *
from books
order by author_fname asc, pages desc;
다음 게시글로 계속!
728x90
반응형
'DATABASE > MySQL Workbench' 카테고리의 다른 글
MySQL Workbench : 문자열 검색에 유용한 like 사용법 (0) | 2024.05.14 |
---|---|
MySQL Workbench : 페이징(paging)에 사용되는 limit 와 offset (0) | 2024.05.14 |
MySQL Workbench : 문자열 처리 함수들 replace(), upper(), lower(), reverse(), char_length() (0) | 2024.05.14 |
MySQL Workbench : 문자열 처리 함수들 concat(), concat_ws(), substring() (0) | 2024.05.14 |
MySQL Workbench : 테이블 생성 및 데이터 CRUD (insert, select, update, delete) 키워드 정리 (0) | 2024.05.14 |