shop-wiz logo
Follow Us on Facebook Follow Us on Google+ Follow Us on Twitter Follow Us on LinkedIn
제목 WHERE - MSQL
등록일 2004.02.25 HIT 7740 작성자 웹지기

3.6 WHERE 절

 SQL에서 사용자가 원하는 조건을 WHERE 절에 넣는다.

  WHERE 절에서는 비교 연산자로 조건을 나타내며 여러 조건을 논리 연산자로 묶을 수 있다. 아래에 비교 연산자와 논리 연산자가 나와 있다.

비교 연산자

내용

( )

수식에서와 같이 연산의 우선 순위를 나타낸다.

=

두 개의 값이 같으면 참이다.

<>

두 개의 같이 같지 않으면 참이다.

<=

왼쪽 값이 크거나 같으면 참이다.

<

왼쪽 값이 크면 참이다.

>=

오른쪽 값이 크거나 같으면 참이다.

>

오른쪽 값이 크면 참이다.

[표 1. 비교 연산자]

논리 연산자

내용

AND

 두 개의 조건을 모두 만족하면 참이 된다.

OR

 두 개의 조건 중 하나만 만족해도 참이 된다.

[표 2. 논리 연산자] 

 이제 WHERE 절이 있는 SELECT 문을 살펴 보자

① SELECT name

    FROM student

    WHERE department = "영어영문학과"

② SELECT name

    FROM student

    WHERE department = "영어영문학과" AND sex = "여자"

 ①은 학과가 영어영문학과인 학생의 이름을 출력하는 SQL문이다. 영어영문학과 여학생의 이름을 출력하기 위해서는 ②와 같이 하면 된다.

 아래에서는 WHERE 절에 쓸 수 있는 비교 연산자 LIKE, RLIKE, CLIKE를 살펴 보자. 이 연산자는 모두 "=" 연산자와 비슷하지만 기능이 좀 다르다.

value1 LIKE value2

 LIKE 연산자는 LIKE 연산자의 오른쪽에 wild-character인 "%"를 포함할 수 있기 때문에 다양한 검색에서 사용할 수 있다.  보기를 들어 people 테이블에서 이름이 W로 시작하는 사람의 이름만 출력하는 SQL문은 다음과 같다.

SELECT name

FROM people

WHERE name LIKE 'W%'

value1 RLIKE value2

 RLIKE 연산자의 오른쪽에 확장된 정규식 (regular expression) 을 사용할 수 있다. 보기를 들어, people 테이블에서 이름이 W로 시작하는 사람들을 출력하는 SQL문을 아래와 같이 작성할 수 있다.

SELECT name

FROM people

WHERE name RLIKE '^W.*'

value1 CLIKE value2

 CLIKE 연산자는 value1과 value2를 대소문자 구분 없이 비교한다. wild-character를 사용할 수 있다. 아래의 SQL문을 수행하면 b 또는 B로 시작하는 이름을 가진 사람을 출력한다.

SELECT name

FROM people

WHERE name CLIKE 'b%'

 WHERE 절은 데이터베이스의 자료를 검색할 때뿐만 아니라 다음에서 살펴볼 삭제나 수정할 때도 쓰기 때문에 잘 알아두기를 바란다.

댓글보기
등록된 댓글이 없습니다.

Powered by shop-wiz since 2002, e-mail:wangta69@naver.com