如何在 MySQL 中按特定模式搜索?


你可以为此使用正则表达式。我们首先创建一个表——

mysql> create table DemoTable
   (
   UserId varchar(100)
   );
Query OK, 0 rows affected (1.28 sec)

使用插入命令在表中插入一些记录——

mysql> insert into DemoTable values('User-123-G');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values('Us-453-GO');
Query OK, 1 row affected (0.08 sec)

mysql> insert into DemoTable values('TRUE-908-K');
Query OK, 1 row affected (0.20 sec)

使用选择语句显示表中的所有记录——

mysql> select *from DemoTable;

这将产生以下输出——

+------------+
| UserId     |
+------------+
| User-123-G |
| Us-453-GO  |
| TRUE-908-K |
+------------+
3 rows in set (0.00 sec)

以下是 MySQL 中按特定模式搜索的查询。在此,我们已将模式设置为 4 个字母数字 - 3 个字母数字 - 1 个字母数字。

注意 - 这里 - 是连字符 -

mysql> select *from DemoTable where UserId regexp '^[[:alnum:]]{4}-[[:alnum:]]{3}-[[:alnum:]]{1}$';

这将产生以下输出——

+------------+
| UserId     |
+------------+
| User-123-G |
| TRUE-908-K |
+------------+
2 rows in set (0.12 sec)

更新于: 30-7-2019

123 次浏览

开启你的 职业生涯

通过完成本课程获得认证

入门
广告