포스트

SQL WHERE 문법

데이터베이스와 통신을 하는 것을 쿼리(Query)라고 한다.

SQL이란?

SQL은 데이터베이스와 통신하기 위한 프로그래밍 언어이다. 각 DBMS마다 조금씩 문법은 다르지만, 기본으로 거의 대부분 동일하다. 본 글은 Mariadb를 기준으로 작성되었다.

CRUD

SQL의 기본 작업 동작이다. 데이터를 쓰고, 읽고, 변경하고, 삭제한다.

  • Create: 데이터 생성 / 입력 - CREATE, INSERT

  • Read: 데이터 읽기 - SELECT

  • Update: 데이터 업데이트 / 수정 - UPDATE

  • Delete: 데이터 삭제 / 제거 - DELETE, DROP, TRUNCATE

WHERE 문법

CRUD의 데이터 입력 동작에 조건을 부여하는 WHERE 문법에 대해 기술하고자 한다. WHERE은 SELECT, UPDATE, DELETE 등 다양하게 사용될 수 있다.

1
2
3
  SELECT * 
  FROM tableName
  WHERE a = 10;

tableName이라는 테이블의 모든 칼럼들 중 a라는 칼럼의 값이 10인 데이터를 쿼리해 온다.

IN 문법

WHERE 에서 IN이라는 문법을 사용할 수 있다.

1
2
3
  SELECT *
  FROM tableName
  WHERE nameCol IN (Kim, Lee);

tableName이라는 테이블의 nameCol이라는 칼럼에서 Kim 이나 Lee 중 하나만이라도 있는 모든 데이터 레코드를 가져온다. 즉, OR 연산자랑 동작 자체는 유사하다. 그러나 장점이 있다.

  • 조건에 사용해야 할 값이 여러개일 때 사용하기 쉽다.
  • OR 연산자보다 속도가 빠르다.
  • IN 연산자 안에 다른 SELECT문을 넣을 수 있다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.