Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 특정 숫자로 끝나는 열 값 조회하기 – LIKE 연산자 활용 방법

개요

MySQL에서 특정 문자나 숫자로 끝나는 열 값을 조회해야 하는 경우가 종종 있습니다. 예를 들어, 숫자 데이터 중 끝자리가 8로 끝나는 값만 골라내고 싶다면 LIKE 연산자와 와일드카드 문자 %를 활용하면 간단하게 해결할 수 있습니다.

이번 글에서는 실제 예제를 통해 특정 숫자로 끝나는 열 값을 선택하는 방법을 단계별로 살펴보겠습니다.

1. 테이블 생성하기

먼저 예제에 사용할 테이블을 생성합니다.

mysql> create table DemoTable
(
   Number int
);
Query OK, 0 rows affected (0.80 sec)

2. 샘플 데이터 삽입하기

INSERT 명령을 사용하여 몇 개의 레코드를 추가합니다.

mysql> insert into DemoTable values(189);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values(178);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(876);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(784);
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable values(988);
Query OK, 1 row affected (0.23 sec)

3. 전체 레코드 확인하기

SELECT 문을 사용하여 테이블에 저장된 모든 레코드를 조회합니다.

mysql> select *from DemoTable;

위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+--------+
| Number |
+--------+
| 189 |
| 178 |
| 876 |
| 784 |
| 988 |
+--------+
5 rows in set (0.00 sec)

4. LIKE 연산자로 특정 숫자로 끝나는 값 조회하기

특정 문자나 숫자로 끝나는 열 값을 선택하려면 LIKE '%8'처럼 조건을 작성하면 됩니다. 여기서 %는 임의의 문자열을 의미하는 와일드카드이므로, '8' 앞에 어떤 숫자가 오더라도 매칭됩니다.

아래는 끝자리가 8로 끝나는 값만 조회하는 쿼리입니다.

mysql> select *from DemoTable where Number LIKE '%8';

실행 결과는 다음과 같습니다.

+--------+
| Number |
+--------+
| 178 |
| 988 |
+--------+
2 rows in set (0.00 sec)

정리

이처럼 MySQL에서는 LIKE 연산자% 와일드카드를 조합하여 특정 문자나 숫자로 끝나는 값을 손쉽게 필터링할 수 있습니다. 참고로 이 방식은 열 값이 문자열로 변환되어 비교되기 때문에, 대량의 데이터를 다룰 때는 인덱스 활용에 제약이 있을 수 있다는 점도 함께 기억해 두시면 좋습니다.