SQL 기본 문법 정리

Yunsung·2024년 12월 16일
post-thumbnail

SQL을 다룰 때 중요한 전체 형식과 정렬 방법, 연산자 등에 대해 정리했습니다. 개념과 활용법을 이해하는 데 도움 되길 바랍니다.


📝 1. SQL 전체 형식

SQL의 기본 명령어 순서는 다음과 같습니다

select ~ 조회대상
from ~ 테이블명
where ~ 검색조건
group by ~ 그룹핑 대상컬럼
having ~ 그룹핑 결과에 대한 조건
order by ~ 정렬 [asc (올림차순, 기본) | desc (내림차순)]
;


🔍 2. SELECT 문 실행 순서

SQL 파싱 순서를 반드시 기억해 두세요:

  1. from ~
  2. where ~
  3. group by ~
  4. having ~
  5. select ~
  6. order by ~
    ⚠️ 순서 중요! 실제 실행 순서와 작성 순서가 다르니 주의하세요.

📈 3. 정렬 방법 (ORDER BY)

데이터를 정렬하는 방법은 크게 올림차순(asc)내림차순(desc)이 있습니다.

  • 올림차순 : 기본값 (생략가능)
  • 예 : 숫자(0, 1, 2...), 문자(a, b, c...), 날짜(오래된 순)
  • 내림차순 : 최신값 또는 큰값 순
  • 예 : order by 입사년도 desc; → 최신 입사 순서

🧮 4. 연산자 정리

연산자 종류설명예시
사칙연산+, -, *, / (몫, 소수 포함)select 10 / 3;
나머지 연산mod(N, M), %select mod(10, 3);
비교연산=, !=, <, >, <=, >=select * from ...
논리연산and, or, not조건식을 결합할 때
NULL 처리ifnull(col_name, 대체값)select ifnull(sal, 0);

⚡ 5. NULL 주의 사항

  • NULL은 값을 알 수 없음을 의미합니다.
  • 연산 대상에서 제외됩니다.
  • ifnull()을 사용하면 NULL 값을 다른 값으로 대체할 수 있습니다.

실습 예제


  1. select emp_name, ifnull(salary, 0) as salary
    • emp_name (직원 이름)과 salary (급여)를 조회합니다.
    • ifnull(salary, 0): salary가 NULL일 경우 0으로 대체합니다.
    • as salary: 결과에서 해당 열의 이름을 salary로 지정합니다.

  2. from employees
    • 데이터를 조회할 테이블의 이름이 employees입니다.

  3. where department = 'IT'
    • where 조건 : department(부서)가 'IT'인 직원만 선택합니다.

  4. group by emp_name
    • emp_name(직원 이름)으로 그룹화합니다.
    • 각 직원별로 데이터를 묶습니다.

  5. having salary > 3000
    • having 조건 : 그룹화된 결과 중 salary(급여)가 3000보다 큰 직원만 선택합니다.
    • having은 그룹화된 결과에 대한 조건을 설정합니다.

  6. order by salary desc
    • salary를 기준으로 내림차순(desc) 정렬합니다.
    • 급여가 가장 높은 직원부터 낮은 순서대로 보여줍니다.
profile
풀스택 개발자로서의 도전을 하는 중입니다. 많은 응원 부탁드립니다!!😁

0개의 댓글