MySQL REGEXP 用来获取以特定数字开头的字符串 + 数字记录?

mysqlmysqli database

为此,请使用 REGEXP 并获取以特定数字开头的记录。语法如下:

Select yourColumnName1,yourColumnName2
from yourTableName
where yourColumnName2 REGEXP '^yourStringValue[yourNumericValue]';

让我们创建一个表 −

mysql> create table demo45
-> (
−> id int not null auto_increment primary key,
−> value varchar(50)
−> );
Query OK, 0 rows affected (1.50 sec)

使用插入命令将一些记录插入表中。我们插入混合了字符串和数字的记录,例如"John500"、"John6500"等 −

mysql> insert into demo45(value) values('John500');
Query OK, 1 row affected (0.12 sec)
mysql> insert into demo45(value) values('John1500');
Query OK, 1 row affected (0.11 sec)
mysql> insert into demo45(value) values('John5500');
Query OK, 1 row affected (0.42 sec)
mysql> insert into demo45(value) values('John6500');
Query OK, 1 row affected (0.10 sec)
mysql> insert into demo45(value) values('John8600');
Query OK, 1 row affected (0.19 sec)

使用 select 语句显示表中的记录 −

mysql> select *from demo45;

这将产生以下输出 −

+----+----------+
| id | value    |
+----+----------+
|  1 | John500  |
|  2 | John1500 |
|  3 | John5500 |
|  4 | John6500 |
|  5 | John8600 |
+----+----------+
5 rows in set (0.00 sec)

以下查询用于获取具有特定数字(即此处的 5 和 6)的记录 −

mysql> select id,value
−> from demo45
−> where value REGEXP '^John[56]';

这将产生以下输出 −

+----+----------+
| id | value    |
+----+----------+
|  1 | John500  |
|  3 | John5500 |
|  4 | John6500 |
+----+----------+
3 rows in set (0.00 sec)

相关文章