목록DB/OracleDB 12c (14)
내가 보려고 정리하는 블로그
LIKE연산자는 = 연산자와 달리 문자 전체를 비교하는것이 아닌 일부 문자만 비교할 수 있도록 하는 연산자이다. 하지만 %기호를 사용해야지 부분비교가 가능하며 %기호를 사용하지 않으면 =연산자와 같은 효과를 가진다. 예를 들어 이름이 홍길동인 사원을 조회할 경우 SELECT NAME FROM 테이블명 WHERE NAME LIKE '홍길동'; 이름이 홍씨인 사원을 조회할 경우 SELECT NAME FROM 테이블명 WHERE NAME LIKE '홍%'; 이름이 길동인 사원을 조회할 경우 SELECT NAME FROM 테이블명 WHERE NAME LIKE '%길동'; 이름에 '길'자가 들어간 사원을 조회할 경우 SELECT NAME FROM 테이블명 WHERE NAME LIKE '%길%'; 이런식으로 사용이..
IN연산자는 하나의 값이 아닌 여러개의 값을 한번에 비교할 때 사용하는 연산자이다. 예를 들어 10,20,30 번의 부서번호를 가진 사원의 이름을 조회할 경우 SELECT NAME FROM 사원테이블 WHERE GROUP_ID IN (10 , 20, 30); 이런 식으로 조회가 가능하다. 내부적으로는 SELECT NAME FROM 사원테이블 WHERE GROUP_ID = 10 OR GROUP_ID = 20 OR GROUP_ID = 30 ; 이렇게 처리가 된다. 게시판의 카테고리별로 리스트를 뽑아내고 싶을경우 사용하였으며 각 값을 배열로 저장해서 쿼리문을 작성하였다.
BETWEEN연산자는 특정한 두값 사이의 범위를 조회할 경우에 사용한다. SELECT * FROM 테이블 WHERE 칼럼명 BETWEEN 값1 AND 값2 ; 이런식으로 사용이 가능하며 보통 게시판의 글을 리스트로 조회할 경우 페이징 처리에 이용한다. SELECT 절에 ROWNUM(번호)를 출력하여 ROWNUM에 대한 범위를 이용해 리스트의 페이징을 처리한다. SELECT ROWNUM AS RN, TITLE , NAME , REG_DT FROM BOARD WHERE RN BETWEEN 0 AND 10; 이런경우에 첫번째 글부터 10번째 글까지의 정보를 가져오게 된다.