본문 바로가기

SQL문

SQL문 비교연산자 2편

반응형

이번 글에서는 좀더 자세히 비교연산자에 대해서 확인을 하여 보도록 하겠습니다.   우선  비교연자가 종류가 어떻게 되는지 확인을 하여 보도록 하겠습니다. 

 

연산자 의미
= ~ 와 같다
<> ~와 같지 않다
>= ~ 이상 
> ~보다 크다
<= ~ 이하
< ~ 보다 작다

 

비교 연산자의 종류는 이렇습니다.   이들 연산자는  문자, 숫자 , 날짜 등의 모든 데이터형과 비교를 할 수가 있습니다. 

 

 

간단한 구문을 확인을 하여 보도록 하겠습니다. 

 

SELECT  * FROM MyDB WHERE M_Price  >=  5000 

 

위 구문을 보자면  M_Price 열(판매단가)가  5000원 이상인 행을 출력을 하는 구문입니다.  특별히 어렵지 않습니다.  WHERE  뒤에  원하는 조건식을  기술을 하면 됩니다. 

 

만약 숫자가 아닌  문자열에   ~이상 ~ 이하의  비교연산자를  적용을 하면  일반적으로 생각하는  결과를 확인을 할 수가 없습니다. 

 

문자열은  숫자와 다르게 사전식 순서가 적용이기 되기 때문에   숫자와 다른 결과를  확인을 할 수가 있습니다. 나중에 좀도 자세히 확인을 하여 보도록 하겠습니다. 

 


NULL에는  비교 연산자를  이용을 할 수가 없습니다. 

 

SQL 문을 이용을 해서 데이터를 추출을 할 때  생각지 않은 결과를 얻는 경우가 있습니다. 이유는 여러가지가 있지만  대표적인 경우가  해당 데이터가  NULL인 경우입니다. 

 

데이터에  NULL 입력이 되어 있는 경우가 많습니다.   그래서  보통  이렇게 작성을 하는 경우가 많습니다. 

 

SELECT  * FROM MyDB WHERE M_Price  =  NULL 

 

이렇게 작성을 하는 경우가 있습니다. 하지만  이렇게 하여도  NULL  어떤 행도  선택되지를 않습니다. 

 

SELECT  * FROM MyDB WHERE M_Price  <>  NULL 

 

이렇게 작성을 하는 경우도 있습니다.  이 또한 원하는 결과를 얻지를 못합니다. 

 

NULL 이 존재를 하는  행을  선택을 하고 싶다면   아래오 같이   구문을 작성을 하시면 됩니다. 

 

SELECT  * FROM MyDB WHEREM_Price  IS NULL

 

이  구문을 보시면 IS NULL 이라는  연산자를 확인을  할 수가 있습니다. 이렇게  NULL 을  선택을 하고 싶다면 전용 연산자 IS NULL를 이용을 하시면 됩니다. 

 

반대로  NULL 존재를 하지 않는  행을 선택하고 싶다면  IS NOT NULL를 이용을 하시면 됩니다. 

SELECT  * FROM MyDB WHEREM_Price  IS NOT NULL

 

참고로  NULL를  비교연산자와 이용을 할 수가 있는 방법은  있습니다.   이 방법은 나중에  좀더 자세히 확인을 하여 보도록 하겠습니다. 

 


여기까지  SQL 문 비교 연산자에 대해서 확인을 하여 보았습니다.   다음으로  논리 연산자에 대해서 확인을 하여 보도록 하겠습니다. 

 

SQL문에서  비교연산자와  논리 연산자자를  잘 이용을 해야  좀더  편하게  원하는 검색을 할 수가 있습니다.   그럼 다음 글에서 보도록 하겠습니다. 

 

 

 

반응형

'SQL문' 카테고리의 다른 글

SQL 문 트랜잭션 1편  (0) 2022.08.30
SQL문 HAVING 구에 대해서  (0) 2022.07.28
SQL문 테이블 그룹 나누는 방법  (0) 2022.07.25
SQL문 집약 2편  (0) 2022.07.21
SQL문 논리연산자 2편 & 집약  (0) 2022.07.20
SQL 산술연산자와 비교연산자  (0) 2022.07.13
SQL 주석 작성법  (0) 2022.07.11