DATABASE/MySQL Workbench

MySQL Workbench : 데이터 중복 제거, 정렬 키워드 (distinct, order by)

신강희 2024. 5. 14. 16:17
728x90

< MySQL 데이터 중복 제거, 정렬 키워드 (distinct, order by) >

 

# 이전 생성한 스키마(DB)와 테이블로 이어서 진행

# 참고 : https://sorktjrrb.tistory.com/105

 

MySQL Workbench : 문자열 처리 함수들 (concat, concat_ws, substring)

# 문자열 처리 함수 학습을 위해 books 라는 새로운 테이블 생성ㄴ 혹시 테이블을 수정하고 싶으면 좌측 목록에서 체크된 아이콘을 누르면 수정 가능! # yhdb 를 사용하였으므로, 해당 db 사용 문구

sorktjrrb.tistory.com

 

# 새로운 학습을 위해서 기존 데이터에 데이터 추가

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;

 

다음 게시글로 계속!

반응형