SQL

[SQL] 검색 조건 지정하기, 조건 조합하기, 패턴매칭 검색

YJ.Cha 2021. 6. 1. 17:09

* 검색 조건 지정하기

행을 선택할 때는 where구

열을 선택할 때는 select구

1. select구에서 열 지정

select 열1, 열2,... from 테이블명

2. where구에서 행 지정

select 열 from 테이블명 where 조건식

ex) select * from sample21 where no=2;

+) <> = 값이 서로 다른 경우 참이 되는 연산자

응용) select * from sample21 where no<>2;

+) 문자열형을 비교할 경우, 따옴표로 둘러싸 표기 (ex: name = '박준용')

+) 날짜시간형도 동일. 이때, 연월일을 하이픈(-)으로 구분하며 시각은 시분초를 콜론(:)으로 구분하여 표기

3. Null 값 검색

- is null

ex) select * from sample 21 where birthday is null;

- is not null

* 조건 조합하기

1. and

ex) select * from sample24 where a<>0 and b<>0

2. or

어느 쪽이든 조건을 만족하는 행을 모두 검색

+) 주의점

and는 or에 비해 우선 순위가 높으므로 and 와 or을 혼합해서 쓰는 경우, 혼동을 방지하기 위해 괄호로 묶어주는 것이 좋다

ex) select * from sample24 where (a=2 or a=2) and (b=1 or b=2);

3. not

오른쪽에 지정한 조건식의 반대 값을 반환

주로 복수의 조건식에 대해 '~아닌', '~외에', '~를 제외한 나머지'등의 조건을 지정할 경우 사용

* 패턴 매칭에 의한 검색

1. like로 패턴 매칭

ex) 열명 like 패턴 (문자열로만 지정 가능)

- like에서 사용할 수 있는 메타문자

%: 임의의 문자열을 의미. 전방 일치(sql%), 중간 일치(%sql%), 후방 일치(%sql) 검색을 가능하게 함

ex) select * from sample25 where text like '%SQL%'; (이 경우 중간 일치)

_: 임의의 문자 하나를 위미

2. like로 % 검색하기

%를 검색하고 싶을 경우, 앞에 백슬래시를 붙이거나 escape를 활용한다

ex) select * from sample25 where text like '%#%%' escape '#';

3. 문자열 상수 작은따옴표(')의 이스케이프

'을 문자열 상수 안에 포함할 경우에는 '를 2개 연속해서 기술

ex) 'It''s'

출처: SQL 첫걸음

'SQL' 카테고리의 다른 글

[SQL] 이커머스 데이터 분석 -1  (0) 2021.09.09
[SQL] 식품 배송 데이터 분석 - 구매자, 상품 분석 등  (0) 2021.09.01
[SQL] 자동차 매출 데이터 분석  (0) 2021.07.28
[SQL] 정렬  (0) 2021.07.04
[SQL] Select, Desc, 자료형  (0) 2021.06.01