Study/DB

[SQL 첫걸음] 3장.정렬과 연산 - 09.정렬(ORDER BY)

momo02 2018. 8. 28. 18:14
반응형

저자 : 아사이 아츠시

출판 : 한빛미디어 

발매 : 2015.11.01



1. ORDER BY로 검색 결과 정렬하기
- SELECT 열명 FROM 테이블명 (WHERE 조건식) ORDER BY 열명
- 지정한 열의 값에 따라 행의 순서가 바뀜.



2. ORDER BY DESC로 내림차순 정렬하기

- 오름차순 정렬 : SELECT 열명 FROM 테이블명 (WHERE 조건식) ORDER BY 열명 ASC
   => 오름차순은 생략 가능. ORDER BY의 기본 정렬방법은 오름차순. 
- 내림차순 정렬 : SELECT 열명 FROM 테이블명 (WHERE 조건식) ORDER BY 열명 DESC
- DESC는 descendant(하강), ASC는 ascendant(상승)의 약자. 



3. 대소관계

 * 작은 것에서 큰 것 순으로 정렬 : ASC
    큰 것에서 작은 것 순으로 정렬 : DESC 

- 수치형 : (작다) 1 < 2 < 10 < 100  (크다) 
- 날짜시간형 : (작다=이전) 1999년 < ... < 2013년 < 2014년 (크다=최근)
- 문자열형 : 가방 < 가족 < 나비   ==> 문자열형 데이터의 데소관계는 사전식 순서에 의해 결정 



a열은 문자열형(VARCHAR) / b열은 수치형(INTEGER)


▲ 1번째 쿼리는 a열이 문자열형(VARCHAR)으로 되어있어 대소관계를 사전식 순서로 비교,

    2번째 쿼리는 b열이 수치형(INTEGER)으로 되어있어 대소관계를 수치값으로 비교

* 문자열형 열에 숫자 데이터를 저장하는데 문제가 되진 않지만, 문자열형 열에 숫자를 저장하면 문자로 인식되 대소관계의 계산 방법이 달라짐.. 따라서 정렬이나 비교연산을 할 때 이 점을 주의. 



4. ORDER BY는 테이블에 영향을 주지 않는다.

- ORDER BY를 이용해 행 순서를 바꿀 수는 있지만, 서버에서 클라이언트로 행 순서를 바꾸어 결과를 반환하는 것뿐, 저장장치에 저장된 데이터의 행 순서를 변경하는 것은 아님. 

반응형