SQL에서 WHERE 절은 데이터베이스에서 특정한 조건을 가진 행을 선택하는 역할을 합니다. WHERE 절은 데이터를 필터링하고 원하는 결과를 얻기 위해 중요한 도구로 활용됩니다.
WHERE 절은 SQL 쿼리에서 특정 조건을 지정하여 데이터를 필터링 하는 데 사용됩니다. 기본적인 WHERE 절의 구문은 다음과 같습니다.
SELECT column1, column2, ...
FROM table_name
WHERE condition;
SQL💡여기서 각 부분의 역할은 다음과 같습니다.
WHERE를 사용하면 특정 조건을 만족하는 행만을 결과로 반환할 수 있습니다. 여기서 WHERE의 다양한 사용법에 대해 설명하겠습니다.
가장 기본적인 WHERE 절의 사용법 중 하나는 비교 연산자를 활용하는 것입니다. 다음은 간단한 예제입니다.
SELECT column1, column2, ...
FROM table_name
WHERE column_name = value;
SQL여기서 column_name은 비교하고자 하는 열의 이름이며, value는 조건과 비교할 값입니다. 예를 들어, 급여가 50000 이상인 직원을 선택하려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name, salary
FROM employees
WHERE salary >= 50000;
SQL여러 조건을 결합하려면 논리 연산자를 사용할 수 있습니다. AND, OR, NOT 등을 활용하여 조건을 결합할 수 있습니다. 예를 들어, 급여가 50000 이상이면서 부서가 ‘IT’인 직원을 선택하려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name, salary, department
FROM employees
WHERE salary >= 50000 AND department = 'IT';
SQLLIKE 연산자를 사용하여 문자열 패턴을 검색할 수 있습니다. 예를 들어, 이름이 ‘김’으로 시작하는 직원을 찾으려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name
FROM employees
WHERE employee_name LIKE '김%';
SQLBETWEEN 연산자를 사용하여 값의 범위를 지정할 수 있습니다. 예를 들어, 급여가 30000에서 50000 사이인 직원을 선택하려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name, salary
FROM employees
WHERE salary BETWEEN 30000 AND 50000;
SQLNULL 값을 처리하기 위해 IS NULL 또는 IS NOT NULL을 사용할 수 있습니다. 예를 들어, 이메일 주소가 없는 직원을 찾으려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name, email
FROM employees
WHERE email IS NULL;
SQLIN 연산자를 사용하여 특정 값들 중 하나에 일치하는 행을 선택할 수 있습니다. 예를 들어, 부서가 ‘IT’ 또는 ‘HR’인 직원을 선택하려면 다음과 같이 사용합니다.
SELECT employee_id, employee_name, department
FROM employees
WHERE department IN ('IT', 'HR');
SQL이렇게 하면 ‘IT’ 또는 ‘HR’ 부서에 속한 직원들이 결과로 반환됩니다. IN 연산자는 여러 값을 한 번에 비교할 때 유용하게 사용됩니다.
WHERE 절 안에서 서브쿼리를 사용하여 좀 더 복잡한 조건을 처리할 수 있습니다. 예를 들어, 다른 테이블에서 가져온 조건을 활용하여 데이터를 선택할 수 있습니다.
💡이렇게 다양한 WHERE 절의 활용법을 이용하면 SQL 쿼리를 통해 데이터를 원하는 조건에 맞게 효과적으로 검색하고 조작할 수 있습니다.
WHERE 절과 연산자는 SQL 쿼리에서 데이터를 조건에 따라 검색하거나 필터링하는 데 사용되는 중요한 요소입니다
비교 연산자 | 설명 | 예제 |
---|---|---|
= | 두 값이 동일한지를 확인합니다. | salary = 50000 |
< | 왼쪽 값이 오른쪽 값보다 작은지를 확인합니다. | salary < 50000 |
> | 왼쪽 값이 오른쪽 값보다 큰지를 확인합니다. | salary > 50000 |
<= | 왼쪽 값이 오른쪽 값보다 작거나 같은지를 확인합니다. | salary <= 50000 |
>= | 왼쪽 값이 오른쪽 값보다 크거나 같은지를 확인합니다. | salary >= 50000 |
LIKE | 문자열 패턴에 대한 일치 여부를 확인합니다. % : 1개 이상의 모든 문자열을 나타냅니다. | name LIKE ‘김%’ |
LIKE | 문자열 패턴에 대한 일치 여부를 확인합니다. ‘_’ : 정확히 한 문자를 나타냅니다. | name LIKE ‘김_’ |
BETWEEN | 값이 주어진 범위 내에 있는지를 확인합니다.(이상,이하) | salary BETWEEN 50000 AND 80000 |
IS NULL | 특정 열의 값이 NULL인지를 확인합니다. | email IS NULL |
IS NOT NULL | 특정 열의 값이 NULL이 아닌지를 확인합니다. | email IS NOT NULL |
💡이 표는 주로 WHERE 절에서 사용되는 일반적인 비교 연산자에 대한 설명과 각각의 예제를 보여줍니다. 이러한 연산자를 조합하여 SQL 쿼리를 작성하면 데이터베이스에서 원하는 조건을 충족하는 데이터를 검색할 수 있습니다.
논리 연산자 | 설명 | 예제 |
---|---|---|
AND | 모든 조건이 참일 때 전체 조건이 참이 됩니다. | salary > 50000 AND department = ‘IT’ |
OR | 여러 조건 중 하나만 참이면 전체 조건이 참이 됩니다. | department = ‘IT’ OR department = ‘인사’ |
NOT | 주어진 조건을 부정하여 조건이 거짓이면 참이 됩니다. | NOT department = ‘재무’ |
IN | 주어진 값 목록 중 하나와 일치하는 경우 참이 됩니다. | department IN (‘IT’, ‘인사’) |
💡이 표는 주로 사용되는 논리 연산자에 대한 설명과 각각의 예제를 나타냅니다. 논리 연산자를 조합하여 SQL 쿼리를 작성하면 여러 조건을 고려한 복잡한 검색을 수행할 수 있습니다.
예제로 사용할 테이블은 학생 정보를 담고 있는 ‘students’라 하고, 테이블은 다음과 같은 구조를 가지고 있습니다.
CREATE TABLE students (
student_id INT PRIMARY KEY,
student_name VARCHAR(50),
age INT,
grade CHAR(1),
department VARCHAR(50)
);
INSERT INTO students VALUES (1, '홍길동', 20, 'A', '컴퓨터 공학');
INSERT INTO students VALUES (2, '김영희', 22, 'B', '전자 공학');
INSERT INTO students VALUES (3, '이철수', 21, 'A', '물리학');
INSERT INTO students VALUES (4, '박지영', 23, 'C', '경영학');
INSERT INTO students VALUES (5, '최성민', 20, 'B', '컴퓨터 공학');
SQL이제 WHERE 절을 사용하여 특정 조건을 만족하는 행을 선택하는 예제를 만들어 보겠습니다. 예를 들어, 나이가 21살 이상인 학생들의 정보를 검색하고 싶다면 다음과 같은 SQL 쿼리를 사용할 수 있습니다.
SELECT * FROM students
WHERE age >= 21;
SQL이 쿼리는 ‘students’ 테이블에서 나이가 21살 이상인 모든 학생의 정보를 선택합니다. 여기서 WHERE age >= 21은 조건을 정의하고, 이 조건을 만족하는 행들만이 결과로 반환됩니다.
+------------+--------------+-----+-------+--------------+
| student_id | student_name | age | grade | department |
+------------+--------------+-----+-------+--------------+
| 2 | 김영희 | 22 | B | 전자 공학 |
| 3 | 이철수 | 21 | A | 물리학 |
| 4 | 박지영 | 23 | C | 경영학 |
+------------+--------------+-----+-------+--------------+
SQL💡이렇게 WHERE 절을 사용하여 특정 조건을 만족하는 데이터를 검색할 수 있습니다.
이 글에서는 SQL의 WHERE 절과 다양한 연산자의 사용법에 대해 살펴보았습니다. WHERE 절은 데이터베이스에서 특정한 조건을 가진 행을 선택하여 데이터를 필터링하고, 원하는 결과를 얻는 데에 중요한 역할을 합니다.
기본적인 WHERE 절의 구문을 살펴보았으며, 다양한 연산자를 활용하여 조건을 지정하는 방법에 대해 알아보았습니다. 비교 연산자를 이용한 단순한 값의 비교부터 논리 연산자를 사용하여 복잡한 조건의 결합, 그리고 LIKE 연산자를 활용한 패턴 매칭, BETWEEN 연산자를 사용한 범위 지정, 그리고 IN 연산자를 통한 여러 값의 비교 등 다양한 활용법을 살펴보았습니다.
WHERE 절과 연산자의 다양한 활용법을 이해하면 SQL을 효과적으로 사용하여 데이터베이스에서 필요한 정보를 추출하고 조작하는 데 큰 도움이 됩니다.👍
소개 자바에서 Set은 중복을 허용하지 않는 데이터 집합을 의미합니다. List와 달리 동일한 요소를 여러 번…
해시(Hash)란 무엇인가? 해시(Hash)는 자바 프로그래밍에서 빠르고 효율적인 데이터 저장 및 검색을 위한 핵심적인 개념입니다. 이…
LinkedList란 무엇인가? LinkedList는 자바에서 유용하게 사용되는 자료구조 중 하나로, 연결 리스트 방식을 이용하여 데이터를 관리하는…
ArrayList란 무엇인가? ArrayList는 자바에서 가장 널리 사용되는 컬렉션 중 하나로, 가변 크기의 배열을 구현한 클래스입니다.…
제네릭(Generic)이란? 자바 제네릭은 코드의 재사용성을 높이고 타입 안전성을 보장하는 중요한 개념입니다. 이 블로그 글에서는 자바…