[sql] WHERE 절을 사용하여 특정 컬럼 패턴 조회하기

SQL에서 WHERE 절을 사용하여 특정 패턴을 가진 컬럼을 조회할 수 있습니다. 이를 통해 데이터베이스에서 원하는 정보를 빠르게 필터링할 수 있습니다. 여기에서는 특정 패턴을 가진 문자열을 검색하는 방법에 대해 살펴보겠습니다.

1. LIKE 연산자를 활용한 패턴 매칭

SQL에서는 WHERE 절에서 LIKE 연산자를 사용하여 특정 패턴을 가진 문자열을 검색할 수 있습니다. 아래는 LIKE 연산자를 사용하여 패턴 매칭을 하는 예시입니다.

SELECT *
FROM 테이블명
WHERE 컬럼명 LIKE '특정패턴';

위의 예시에서 ‘특정패턴’ 부분에는 실제로 조회하고자 하는 패턴을 나타내는 문자열을 넣어주면 됩니다. 이때 % 기호는 0개 이상의 모든 문자를 나타내며, _ 기호는 단일 문자를 나타냅니다.

예를 들어, 만약 ‘name’ 컬럼에서 ‘John’으로 시작하는 모든 이름을 찾고 싶다면 다음과 같이 쿼리를 작성할 수 있습니다.

SELECT *
FROM employees
WHERE name LIKE 'John%';

2. 정규표현식을 활용한 패턴 매칭

일부 데이터베이스 시스템은 정규표현식을 지원하여 좀 더 유연한 패턴 매칭을 제공할 수 있습니다. 정규표현식을 사용하면 더 복잡한 패턴을 정의할 수 있어 다양한 상황에 대응할 수 있습니다.

예를 들어, ‘email’ 컬럼에서 gmail.com 도메인을 가진 이메일 주소를 모두 찾고 싶다면 다음과 같이 쿼리를 작성할 수 있습니다.

SELECT *
FROM users
WHERE email REGEXP '.*@gmail.com';

위의 쿼리에서 .*는 0개 이상의 모든 문자를 나타내며, @gmail.com은 gmail.com 도메인을 나타냅니다.

위의 예시를 통해 WHERE 절을 사용하여 특정 컬럼 패턴을 조회하는 방법을 살펴보았습니다. 데이터베이스 시스템에 따라 지원하는 패턴 매칭 방식이 다를 수 있으니, 해당 시스템의 문서를 참고하여 정확한 문법을 확인하는 것이 좋습니다.

참고 문헌: