Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 쉼표로 구분된 값 테이블 내에서 검색하려면 어떻게 해야 합니까?

<시간/>

쉼표로 구분된 값 테이블 내에서 검색하려면 LIKE 연산자를 사용합니다. 먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable675(Value text);
Query OK, 0 rows affected (0.55 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable675 values('10,56,49484,93993,211,4594');
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable675 values('4,7,1,10,90,23');
Query OK, 1 row affected (0.41 sec)
mysql> insert into DemoTable675 values('90,854,56,89,10');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable675 values('11,22,344,67,89');
Query OK, 1 row affected (0.10 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable675;

이것은 다음과 같은 출력을 생성합니다 -

+----------------------------+
| Value                      |
+----------------------------+
| 10,56,49484,93993,211,4594 |
| 4,7,1,10,90,23             |
| 90,854,56,89,10            |
| 11,22,344,67,89            |
+----------------------------+
4 rows in set (0.00 sec)

다음은 쉼표로 구분된 값 테이블 내에서 검색하는 쿼리입니다 -

mysql> select *from DemoTable675
   WHERE Value LIKE '10,%'
   OR Value LIKE '%,10'
   OR Value LIKE '%,10,%'
   OR Value= '10';

이것은 다음과 같은 출력을 생성합니다 -

+----------------------------+
| Value                      |
+----------------------------+
| 10,56,49484,93993,211,4594 |
| 4,7,1,10,90,23             |
| 90,854,56,89,10            |
+----------------------------+
3 rows in set (0.00 sec)