색인
선택하다
기본 구조
SELECT (DISTINCT) (컬럼명)
FROM (테이블명)
WHERE (쿼리 조건)
GROUP BY (컬럼명) HAVING (집계함수 조건)
ORDER BY (컬럼명 ASC || 컬럼명 DESC)
;
전체 테이블 검색
모두보기
SELECT *
FROM employees;
열 이름으로 쿼리
SELECT emp_no
FROM employees;
SELECT emp_no, first_name
FROM employees;
특정 조건으로 검색
기본 구조
SELECT (컬럼명)
FROM (테이블명)
WHERE (쿼리 조건);
특정 날짜와 일치하는 조건으로 검색
SELECT *
FROM employees
WHERE emp_no = 10001;
SELECT *
FROM employees
WHERE first_name="Georgi";
관계 연산자를 사용한 쿼리
SELECT *
FROM employees
WHERE emp_no <= 10005;
AND, OR을 사용하여 여러 조건을 지정하여 검색
SELECT *
FROM employees
WHERE emp_no <= 10001
AND emp_no <= 10005;
SELECT *
FROM employees
WHERE emp_no <= 10003
OR emp_no >= 499997;
BETWEEN (A) AND (B) – 이 범위 내에서 데이터를 쿼리합니다.
SELECT *
FROM employees
WHERE emp_no BETWEEN 10003 AND 10010;
IN()을 사용하여 이 데이터를 쿼리합니다.
SELECT *
FROM employees
WHERE emp_no IN( 10003, 10010 );
LIKE로 문자열 내용 쿼리
– “%”는 모든 것을 허용함을 의미합니다(모든 문자, 임의의 문자 수).
SELECT *
FROM employees
WHERE first_name like( '%eo' );
SELECT *
FROM employees
WHERE first_name like( 'eo%' );
– “_”는 “_”의 개수만큼만 허용됩니다.
SELECT *
FROM employees
WHERE first_name like( '_eorgi' );
SELECT *
FROM employees
WHERE first_name like( 'Georg_' );
쿼리에 대해 ORDER BY로 정렬
– 오름차순 ASC
SELECT *
FROM employees
ORDER BY emp_no ASC;
– 내림차순 DESC
SELECT *
FROM employees
ORDER BY emp_no DESC;
DISTINCT로 중복값 없는 쿼리
SELECT DISTINCT dept_no
FROM dept_manager;
LIMIT로 출력 수를 제한하여 쿼리
SELECT *
FROM employees
LIMIT 5;
SELECT *
FROM employees
LIMIT 5 OFFSET 10;
하위 쿼리
다른 쿼리 내의 쿼리
SELECT *
FROM dept_manager
WHERE
dept_no = (
SELECT dept_no
FROM dept_manager
WHERE emp_no = 110114
);
집계 함수
– AVG(컬럼명): 평균
– MAX(컬럼명) : 최대값 찾기
– MIN(열명) : 최소값 찾기
– COUNT(컬럼 이름): 숫자를 계산합니다.
그룹화 기준
그룹으로 보기
GROUP BY 열 이름(HAVING 집계 함수 조건)
SELECT dept_no, COUNT(emp_no) AS cnt
FROM dept_manager
GROUP BY dept_no
HAVING cnt > 2;
GitHub