[sql]비교 연산자 or and in

hanahana·2023년 1월 6일
0
post-thumbnail

두가지 조건 중 하나 이상이 참일때

or

where절에 or연산자를 사용한다

select * 
from tbl
where col = '조건1' 
or col = '조건2'

where절을 이렇게 써주면 조건1 이라고 써져있는 컬럼과 조건2라고 써져있는 컬럼 모든 컬럼을 선택할수있다.

in

or를 사용하면 where 절에 조건을 2개를 늘여써야 한다.
하지만 in을 사용하면 조건을 한줄로 만들수있다.

select * 
from tbl
where col in('조건1' , '조건2') 

in 뒤에 ()안에 , 로 만족할 조건 여러개를 입력해주면된다.

두가지 조건이 모두 참일 때

and

select * 
from tbl
where col = '조건1' 
and col2 = '조건2'

and를 활용하면 모두가 참인 결과를 얻을 수있다.

숫자를 이용하여 크고 작음을 확인하는 조건

비교연산자

  • c2의 값이 '조건1'이고 c3의 값이 30보다 큰 열을 선택할떄
select * 
from tbl
where c2 = '조건1' 
and c3 > 30

여기에는 and연산자를 사용했기때문에 2가지의 값이 모두 참이어야 하며 c3이 30보다 큰 열만 선택되어 출력된다

  • 마찬가지로 a가 b보다 작을때는 a<b 크거나 같을때는 a>=b 같은 일반적인 비교연산자 방식으로 똑같이 사용하면 된다
  • ==같은 일반 프로그램언어에서 같다를 선언하는 부등호는 사용하지 않는다.

서브쿼리를 이용하여 2가지 조건을 만족하는 열 찾기

  • 문제는 A컬럼 조건을 만족하는 한개의 열의 B컬럼의 값보다 큰 다른 모든 열을 select하는 것이다.
    어렵게 느껴지지만 where절에 조건을 한번 더 입력한다고 생각하면 어렵지 않다
select * 
from tbl
where B > //아래조건보다 큰 값을 구한다
//여기서 부터 서브쿼리, 그러니까 1번 조건을 입력한다.
(select B from tbl where A = '조건') \
//이 경우 ()안의 select한 값을 인식하여 B >()값으로 비교하여 만족하는 조건을 찾게된다.

반드시 괄호를 입력한다 잊지 않기

본 내용은 데이터리안 'SQL 데이터 분석 캠프 입문반' 을 수강하며 작성한 내용입니다.

profile
hello world

0개의 댓글