WHERE 절에서 여러 개의 값을 비교하여 조건을 만족시키는 데 사용됩니다. 예를 들어, 다음과 같이 구문을 작성할 수 있습니다.
SELECT *
FROM 테이블명
WHERE 열이름 IN (값1, 값2, 값3, ...);
위의 구문에서 IN 다음 괄호 안에는 여러 개의 값이 쉼표로 구분되어 있으며, 이 값들은 열 이름이 가지는 값 중 하나와 일치하는 경우 해당 레코드를 반환 합니다. 이 연산자를 사용하면 여러 개의 값과 일치하는 레코드를 선택하는 데 유용합니다.
다음은 예시입니다. 우리가 주문한 상품의 목록을 조회할 때, IN 연산자를 사용하여 여러 상품을 선택할 수 있습니다.
SELECT *
FROM orders
WHERE product_name IN ('TV', 'Laptop', 'Smartphone');
위의 쿼리는 'TV', 'Laptop', 'Smartphone' 중 하나를 주문한 모든 레코드를 반환합니다.
SELECT *
FROM 테이블명
WHERE LOWER(열이름) = '조회하고자 하는 값';
위의 구문에서 LOWER 함수는 문자열을 모두 소문자로 변환합니다. 이를 이용해 열이름을 소문자로 변환한 뒤에 값과 비교하여 일치하는 레코드를 반환합니다.
SELECT *
FROM 테이블명
WHERE UPPER(열이름) = '조회하고자 하는 값';
위의 구문에서 UPPER 함수는 문자열을 모두 대문자로 변환합니다. 이를 이용해 열이름을 대문자로 변환한 뒤에 값과 비교하여 일치하는 레코드를 반환합니다.
SELECT *
FROM 테이블명
WHERE INITCAP(열이름) = '조회하고자 하는 값';
위의 구문에서 INITCAP 함수는 문자열에서 첫 번째 문자를 대문자로 변환하고, 나머지 문자는 소문자로 변환합니다.
SELECT SYSDATE FROM dual;
'2023-04-25'와 같은 문자열을 날짜 데이터형으로 변환하려면 다음과 같이 작성합니다.
SELECT TO_DATE('2023-04-25', 'YYYY-MM-DD') FROM dual;
위의 SQL 문에서 'dual'은 Oracle에서 임시적으로 사용되는 가상의 테이블입니다. 이렇게 'dual' 테이블을 사용하여 단일 행을 조회하면, 'TO_DATE' 함수가 반환하는 날짜 데이터형이 출력됩니다.