1) ORDER BY
- ORDER BY구를 사용하면 정해진 순서로 결과값을 얻을 수 있습니다.
SELECT 열명 FROM 테이블명 ORDER BY 열명
1-1) ORDER BY DESC로 내림차순으로 정렬하기
- 열명 뒤에 DESC를 붙이면 내림차순으로 정렬할 수 있습니다.
SELECT 열명 FROM 테이블명 ORDER BY 열명 DESC
1-2) 복수열로 정렬 지정
- ORDER BY 구에는 복수로 열을 지정할 수 있습니다.
SELECT * FROM sample32 ORDER BY a,b;
SELECT * FROM sample32 ORDER BY a ASC, b DESC;
2) LIMIT 구
- LIMIT 구는 SELECT 명령의 마지막에 지정하는 것으로 WHERE 구나 ORDER BY 구의 뒤에 지정합니다.
SELECT 열명 FROM 테이블명 WHERE 조건식 ORDER BY 열명 LIMIT 행수
2-1) 오프셋 지정
- OFFSET에 의한 시작 위치 지정은 LIMIT 뒤에 기술합니다.
LIMIT 구의 OFFSET은 생략 가능하며 기본값은 0입니다.
간단하게 정리하면 '시작할 행-1'로 기억해두면 편리합니다.
SELECT 열명 FROM 테이블명 LIMIT 행수 OFFSET 위치
3) 열의 별명
- SELECT 결과에서 price*quantity와 같이 열을 명명한다면,
해당 열에 별명을 붙여 재지정할 수 있습니다.
SELECT *, price*quantity FROM sample34;
// 별명 사용
SELECT *, price*quantity AS amount FROM sample34;
4) WHERE 구에서 연산하기
- WHERE 구에서 계산, 검색을 할 수 있습니다.
SELECT *, price*quantity AS amount FROM sample34 WHERE price*quantity >= 2000;
5) ROUND 함수
- ROUND 함수를 사용해서 반올림 할 수 있습니다.
SELECT amount, ROUND(amount) FROM sample341;
// 소수점 둘째 자리를 반올림
SELECT amount, ROUND(amount, 1) FROM sample341;
6) 문자열 연산
- CONCAT 함수를 사용해 문자열 결합을 할 수 있습니다.
SELECT CONCAT(quantity, unit) FROM sample25;
6-1) SUBSTRING 함수
- SUBSTRING 함수는 문자열의 일부분을 계산해서 반환해주는 함수입니다.
SUBSTRING('20140124001', 1, 4) -> '2014'
SUBSTRING('20140125001', 5, 2) -> '01'
6-2) TRIM 함수
- TRIM 함수는 문자열의 앞뒤로 여분의 스페이스가 있을 경우 이를 제거해주는 함수입니다.
TRIM('ABC ') -> 'ABC'
7) 날짜 연산
- 표준 SQL에서는 CURRENT_TIMESTAMP라는 함수를 기준으로 시간을 표시합니다.
SELECT CURRENT_TIMESTAMP;
7-1) 날짜의 덧셈과 뺄셈
- 날짜 시간형 데이터는 기간형 수치데이터와 덧셈 및 뺄셈을 할 수 있습니다.
SELECT CURRENT_DATE + INTERVAL 1 DAY;
8) CASE 문으로 데이터 변환하기
- CASE 문은 다음과 같이 작성할 수 있습니다.
CASE WHEN 조건식1 THEN 식1
[WHEN 조건식2 THEN 식2 ...]
[ELSE 식3]
END
8-1) 검색 CASE
- CASE문은 '검색 CASE'와 '단순 CASE'의 두 개 구문으로 나눌 수 있습니다.
우선, 검색 CASE문은 다음과 같이 작성할 수 있습니다.
SELECT a AS "코드",
CASE
WHEN a=1 THEN '남자'
WHEN a=2 THEN '여자'
ELSE '미지정'
END AS "성별" FROM sample37;
8-2) 단순 CASE
- 단순 CASE문은 다음과 같이 작성할 수 있습니다.
SELECT a AS "코드",
CASE a
WHEN 1 THEN '남자'
WHEN 2 THEN '여자'
ELSE '미지정'
END AS "성별" FROM sample37;
레퍼런스
SQL 첫걸음
'SQL' 카테고리의 다른 글
SQL 기본 문법 정리(4) (COUNT, DISTINCT, SUM, AVG, MIN, MAX) (0) | 2022.04.14 |
---|---|
SQL 기본 문법 정리(3) (INSERT, DELETE, UPDATE) (0) | 2022.04.14 |
SQL 기본 문법 정리(1) (SELECT, DESC, AND, OR, LIKE) (1) | 2022.04.12 |
프로그래머스 SQL 고득점 KIT(SUM, MAX, MIN) (0) | 2022.04.12 |
프로그래머스 SQL 고득점 KIT(SELECT) (0) | 2022.04.10 |