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

MySQL에서 문자열에 숫자가 포함되어 있는지 확인하시겠습니까?

<시간/>

문자열에 숫자가 포함되어 있는지 확인하려면 regexp, 즉 정규식을 사용할 수 있습니다. 구문은 다음과 같습니다 -

SELECT *FROM yourTableName where yourColumnName REGEXP ‘[0-9]’;

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> create table StringContainsNumber
   -> (
   -> Id int not null auto_increment,
   -> Words text,
   -> primary key(Id)
   -> );
Query OK, 0 rows affected (0.53 sec)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다 -

mysql> insert into StringContainsNumber(Words) values('He12345llo');
Query OK, 1 row affected (0.19 sec)

mysql> insert into StringContainsNumber(Words) values('MySQL is not a programming
4language');
Query OK, 1 row affected (0.17 sec)

mysql> insert into StringContainsNumber(Words) values('Java is an object oriented');
Query OK, 1 row affected (0.18 sec)

mysql> insert into StringContainsNumber(Words) values('Java does not support 456 multiple
inheritance');
Query OK, 1 row affected (0.20 sec)

mysql> insert into StringContainsNumber(Words) values('MySQL is a RDBMS 456');
Query OK, 1 row affected (0.19 sec)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다 -

mysql> select *from StringContainsNumber;

다음은 출력입니다.

+----+------------------------------------------------+
| Id | Words                                          |
+----+------------------------------------------------+
|  1 | He12345llo                                     |
|  2 | MySQL is not a programming 4language           |
|  3 | Java is an object oriented                     |
|  4 | Java does not support 456 multiple inheritance |
|  5 | MySQL is a RDBMS 456                           |
+----+------------------------------------------------+
5 rows in set (0.00 sec)

다음은 REGEXP -

를 사용하여 숫자가 있는 문자열을 찾는 쿼리입니다.
mysql> select *from StringContainsNumber where Words regexp '[0-9]';

다음은 출력입니다 -

+----+------------------------------------------------+
| Id | Words                                          |
+----+------------------------------------------------+
|  1 | He12345llo                                     |
|  2 | MySQL is not a programming 4language           |
|  4 | Java does not support 456 multiple inheritance |
|  5 | MySQL is a RDBMS 456                           |
+----+------------------------------------------------+
4 rows in set (0.11 sec)