WHERE 절을 사용 하여 SELECT문에서 반환된 행을 필터링 하는 방법

 

SELECT문은 테이블에 있는 하나 이상의 열에서 모든 행을 반환합니다. 지정된 조건을 충족하는 행을 선택하려면 WHERE절 을 사용합니다 .

SELECT select_list
FROM table_name
WHERE condition
ORDER BY sort_expression

- condition은 반드시 true, false or unknown으로 평가합니다.

- 부울 표현식이거나 AND, OR 연산자의 부울 식의 조합일 수 있습니다.

- SELECT에서 column_alias를 사용할 경우 WHERE절에서 사용할 수 없습니다.

- 비교 및 논리 연산자를 사용합니다.

OperatorDescription

= Equal
> Greater than
< Less than
>= Greater than or equal
<= Less than or equal
<> or != Not equal
AND Logical operator AND
OR Logical operator OR
IN Return true if a value matches any value in a list
BETWEEN Return true if a value is between a range of values
LIKE Return true if a value matches a pattern
IS NULL Return true if a value is NULL
NOT Negate the result of other operators

1) 등호( =) 연산자 와 함께 WHERE 절 사용

-- WHERE이름이 다음과 Jamie이라는 고객 절을 사용합니다
SELECT
	last_name,
	first_name
FROM
	customer
WHERE
	first_name = 'Jamie';

 

2) AND연산자 예제 와 함께 WHERE 절 사용

-- Jamie과 rice사용하여 AND두 개의 부울 식을 결합하는 논리 연산자
SELECT
	last_name,
	first_name
FROM
	customer
WHERE
	first_name = 'Jamie' AND 
        last_name = 'Rice';

 

3) OR연산자 예제 와 함께 WHERE 절 사용

-- 연산자 를 사용하여 성이 Adamd이거나 이름이 Rodriguez이거나인 고객을 찾습니다.
SELECT
	first_name,
	last_name
FROM
	customer
WHERE
	last_name = 'Rodriguez' OR 
	first_name = 'Adam';

 

4) IN연산자 예제 와 함께 WHERE 절 사용

-- 이름이 Ann, Annie 또는 Anne, 또는 인 고객을 반환합니다 
SELECT
	first_name,
	last_name
FROM
	customer
WHERE 
	first_name IN ('Ann','Anne','Annie');

 

5) LIKE연산자 예제 와 함께 WHERE 절 사용

 -- 이름이 Ann 문자열로 시작하는 모든 고객을 반환합니다 
 SELECT
	first_name,
	last_name
FROM
	customer
WHERE 
	first_name LIKE 'Ann%'

 

%모든 문자열과 일치하는 와일드 카드라고합니다

6) BETWEEN 연산자 예제와 함께 WHERE 절 사용

-- BETWEEN연산자를 사용하여 이름이 A문자로 시작하고 3~5자 포함된 고객을 찾습니다 .
SELECT
	first_name,
	LENGTH(first_name) name_length
FROM
	customer
WHERE 
	first_name LIKE 'A%' AND
	LENGTH(first_name) BETWEEN 3 AND 5
ORDER BY
	name_length;

LENGTH()입력 문자열의 문자 수를 가져오는 함수

 

7) 같지 않음 연산자(<>) 예제와 함께 WHERE 절 사용

이름이 Motley로 시작하고 성이 Bra 과 같은 고객을 찾습니다 Motley.
SELECT 
	first_name, 
	last_name
FROM 
	customer 
WHERE 
	first_name LIKE 'Bra%' AND 
	last_name <> 'Motley';

 

!=연산자와 <>연산자는 동일하므로 서로 바꿔서 사용할 수 있습니다 .
반응형

'SW ENGINEERING > Postgres' 카테고리의 다른 글

[PostgreSQL] BASIC - FETCH  (0) 2021.09.01
[PostgreSQL] BASIC - LIMIT  (0) 2021.09.01
[PostgreSQL] BASIC - SELECT DISTINCT  (0) 2021.09.01
[PostgreSQL] BASIC - ORDER BY  (0) 2021.09.01
[PostgreSQL] BASIC - Column_alias  (0) 2021.09.01
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기