기록과 정리

데이터 꺼내오기 (ORDER BY / SUBSTR,RIGTH,LEFT - 문자열자르기 / ROUND/CEIL/FLOOR - 소수점) 본문

IT/DB

데이터 꺼내오기 (ORDER BY / SUBSTR,RIGTH,LEFT - 문자열자르기 / ROUND/CEIL/FLOOR - 소수점)

zepetto 2021. 8. 16. 23:13

이 글은 '[백문이불여일타] 데이터 분석을 위한 기초 SQL' 강의를 참고하였습니다.

https://www.inflearn.com/course/%EB%B0%B1%EB%AC%B8%EC%9D%B4%EB%B6%88%EC%97%AC%EC%9D%BC%ED%83%80-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%EA%B8%B0%EC%B4%88-sql/lecture/29718?tab=note 

 

[백문이불여일타] 데이터 분석을 위한 기초 SQL - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

데이터 정렬하기 

데이터 정렬시에는 'ORDER BY' 라는 예약어를 사용한다.

 

ORDER BY 기초

데이터를 정렬할 때, 오름차순은 ASC, 내림차순은 DESC 예약어를 사용한다.

W3School 에서 실습을 해보면

 

SELECT * FROM Customers ORDER BY CustomerID DESC

 

로 쿼리를 실행해보자. CustomerID가 내림차순 정렬되어 검색됨을 볼 수 있다.

ORDER BY의 위치는 맨 마지막에 온다. ORDER BY 예약어는 데이터 자체의 순서를 변경하지는 않는다. (데이터를 건드리는 것이 아님)

 

문자열 자르기 (LEFT/RIGHT/SUBSTR)

흔히 사용하는 MySQL에 문자열을 자르는 함수는 크게 3가지가 있다.

 

- LEFT(컬럼명 또는 문자열, 문자 길이)

- RIGHT(칼럼명 또는 문자열, 문자 길이)

- SUBSTR(칼럼명 또는 문자열, 시작 위치, 길이)

 

LEFT와 RIGHT는 시작점이 왼쪽인지 또는 오른쪽부터인지 자르는 것이라고 보면 된다. SUBSTR의 경우는 앞선 두 경우보다 복잡하지만 정교하게 자를 수 있다. 단 길이를 안 적으면 끝까지 가져온다. ( ex. SUBSTR(name, 3) )

 

STUDENTS 테이블에서 marks 75 초과이면서, 이름 끝자리 3자리 오름차순 기준으로 정렬 후 두번째 정렬기준을 id 로 정렬하는 경우

소수점처리 (CEIL, FLOOR, ROUND)

MySQL의 소수점 처리에는 3가지가 있다.

- CEIL() : 올림

- FLOOR() : 내림

- ROUND(숫자, 반올림할 소수점 자릿수) : 반올림

 

 

'IT > DB' 카테고리의 다른 글

SQL-JOIN  (0) 2021.09.01
SQL 조건문 - CASE  (0) 2021.09.01
데이터 요약 GROUP BY & HAVING  (0) 2021.08.22
집계함수(COUNT/SUM/AVG/MIN/MAX)  (0) 2021.08.22
데이터 꺼내오기 (SELECT) - 기본  (0) 2021.08.16