SQLD/SQL 기본과 활용

SQL의 LIKE, IN, BETWEEN 연산자 및 연산자 우선순위

DevPing9_ 2020. 8. 20. 16:31

1. 연산자 우선순위 : ( ), NOT, AND, OR

 

ex) SELECT ENAME FROM EMP 

     WHERE E_ID = '1' OR E_ID = '2' AND SAL >= '500' AND HEIGHT >= 170;

 

 => AND가 먼저 묶이고 OR이 묶임. E_ID = '2' 와 SAL>=500 이 하나로 묶이는 듯. 나중에 확인 해볼 것.

 

참고) NOT 연산자는 <>, !=, ^= 로 대체가능

 

2. LIKE 'str'[Wildcard]

 # Wildcard : % :  0개 이상의 문자

                      _  : 1개 단일 문자

# 예시 1
SQL> SELECT E_NAME FROM EMP
	WHERE E_NAME LIKE '김%'
    
# 실행결과
E_NAME
------
김희선
김흥국
김지선
김소영
김수현
김칫국
....
총 6개의 행이 선택되었습니다.
    
    
    
# 예시 2    
SQL> SELECT E_NAME FROM EMP
	WHERE E_NAME LIKE '김_국'
    
# 실행결과
E_NAME
------
김흥국
김칫국
....
총 2개의 행이 선택되었습니다.

 

 

3. IN (list)

 

SQL> SELECT E_NAME FROM EMP
	WHERE E_NAME IN ('김흥국', '김칫국')

E_NAME
------
김흥국
김칫국
....
총 2개의 행이 선택되었습니다.

 

4. BETWEEN

 

SQL> SELECT E_NAME, HEIGHT FROM EMP
	WHERE HEIGHT BETWEEN 170 AND 180

E_NAME      HEIGHT
------      ------
소시지        176
김칫국        172
무말랭        179
....
총 3개의 행이 선택되었습니다.
728x90