DB에서 데이터를 검색하는 역할
실무에서 가장 많이 쓰임
FROM
and JOIN
: 조회 테이블 확인 및 테이블 조인(병합)WHERE
: 데이터 추출 조건 확인GROUP BY
: 특정 컬럼 그룹화HAVING
: 그룹화 이후 데이터 추출 조건SELECT
: 데이터 추출DISTINCT
: 중복 제거ORDER BY
: 데이터 순서 정렬특정 행을 선택하고 해당 행에 대한 업데이트 수행 전 행을 잠금
여러 트랜잭션에서 동시에 같은 행에 대한 업데이트를 시도하는 경우 충돌을 방지
-- employees 테이블에서 employee_id가 101인 행을 선택하고 잠금을 설정
SELECT *
FROM employees
WHERE employee_id = 101
FOR UPDATE;
SELECT *
FROM MEMBER;
SELECT *
FROM MEMBER
WHERE gender = 'man'
-- employees 테이블을 department 열을 기준으로 그룹화하고 평균 연봉을 계산
SELECT department, AVG(salary) AS avg_salary
FROM employees
GROUPB BY department;
-- employees 테이블에서 이름과 연봉을 salary 기준으로 내림차순 정렬
SELECT employee_name, salary
FROM employees
ORDER BY salary DESC;
-- GROUP BY로 그룹화 먼저, 이 후 ORDER BY로 정렬
SELECT department, AVG(salary) AS avg_salary
FROM employees
GROUP BY department
ORDER BY avg_salary DESC;