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


为此,使用 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)

运用 insert 命令向表中插入一些记录。我们插入的是混合字符串和数字的记录,即“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)

更新于: 2020-11-19

232 次浏览

开启您的 职业生涯

完成课程获得认证

开始学习
广告