SELECT
모든 레코드 조회하기 | - 오름차순 select * from 테이블명 order by 정렬기준컬럼 asc; - 내림차순 select * from 테이블명 order by 정렬기준컬럼 desc; |
조건없는 특정 컬럼 조회하기 | select 컬럼명 from 테이블명; |
조건있는 특정 컬럼 조회하기 | - 값이 일치하는 행 가져오기 select 컬럼명 from 테이블명 where 컬럼명 = "값"; - 값이 일치하지 않는 행 가져오기 select 컬럼명 from 테이블명 where 컬럼명 != "값"; |
여러 기준으로 정렬하기 | select * from 테이블명 order by 컬럼명1 asc, 컬럼명2 desc; |
상위 N개 조회하기 | select * from 테이블명 order by 컬럼명 limit N; |
MAX / MIN / COUNT / SUM / AVG
특정 컬럼 행들에서의 최대값 구하기 | select max(컬럼명) from 테이블명; |
특정 컬럼 행들에서의 최소값 구하기 | select min(컬럼명) from 테이블명; |
컬럼 수 구하기 | select count(*) from 테이블명; |
특정 컬럼 행들의 합 구하기 | select sum(컬럼명) from 테이블명; |
특정 컬럼 행들의 평균 구하기 | select avg(컬럼명) from 테이블명; |
DISTINCT
특정 컬럼에서 중복 제거한 행의 개수 세기 | select count(distinct(컬럼명)) from 테이블명; |
NULL
특정 컬럼 값이 null인 행 조회하기 | select * from 테이블명 where 컬럼명 is null; |
특정 컬럼 값이 null이 아닌 행 조회하기 | select * from 테이블명 where 컬럼명 is not null; |
null 값을 대체하여 조회하기 | select 컬럼명, ifnull(기준컬럼명, "대체할텍스트") as 새로운컬럼명 from 테이블명; |
GROUP BY
묶은 그룹에 해당하는 행 수 세기 | select 컬럼명, count(컬럼명) as 컬럼의새로운이름 from 테이블명 group by 기준컬럼명; | |
N번 이상 나온 컬럼과 행 수 세기 | select 컬럼명, count(컬럼명) as 컬럼의새로운이름 from 테이블명 group by 기준컬럼명 having count(컬럼) >= N; - 예시 select NAME, count(NAME) as 'CNT' from ANIMAL_INS GROUP BY NAME HAVING count(NAME) >= 1 order by NAME; |
|
N시 이상인 시간대별 행 수 세기 | select hour(컬럼명) as 컬럼의새로운이름, count(hour(컬럼명)) as 컬럼의새로운이름 from 테이블명 where hour(컬럼명) >= N group by hour(컬럼명) order by hour(컬럼명); - 예시(주차시간이 N시 이상 M시 이하인 행 찾기) select hour(DATETIME) as 'HOUR', count(hour(DATETIME)) as 'CNT' from PARK_OUTS WHERE hour(DATETIME) >= 9 and hour(DATETIME) <= 19 group by hour(DATETIME) order by hour(DATETIME); |
count(*)은 null 값을 갖는 행을 포함하여 센다
JOIN
left join | - 예시(주차장에서 나간 기록은 있지만 들어온 기록은 없는 차 데이터 조회) select OUTS.CAR_ID from OUTS left outer join INS on OUTS.CAR_ID = INS.CAR_ID where INS.CAR_ID is null; |
right join | - 예시(주차장에 들어온 시각이 나간 시각보다 나중인 차 데이터 조회) select INS.CAR_ID from INS left join OUTS on INS.CAR_ID = OUTS.CAR_ID where INS.DATETIME > OUTS.DATETIME; |
STRING
string 값 여러 개 검색하기 | select NAME from STUDENT where NAME in ('park', 'kim'); |
LIKE
이름에 el이 들어간 데이터 검색하기 | select NAME from STUDENT where NAME like "%el%"; |
'알고리즘(코딩테스트)' 카테고리의 다른 글
백준 1932번 정수 삼각형(JAVA) (0) | 2021.10.28 |
---|---|
유니온 파인드(Union find) 알고리즘 (0) | 2021.10.10 |
투포인터(Two Pointers) 알고리즘 (0) | 2021.10.08 |
이분탐색(Binary Search) 알고리즘 (0) | 2021.10.08 |
크루스칼(Kruskal)과 프림(Prim) 알고리즘 (0) | 2021.10.02 |
댓글