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)