MySQL 查询来检查某行是否只有两个单词?


为此,请像以下语法中那样使用 MySQL 中的正则表达式 −

select * from yourTableName where yourColumnName regexp '^[^ ]+[ ]+[^ ]+$';

当这两个单词由空格分隔开时,上面的查询将起作用。我们首先创建一个 −

mysql> create table DemoTable1412
   -> (
   -> Name varchar(40)
   -> );
Query OK, 0 rows affected (0.52 sec)

使用 insert 插入一些记录到表格中 −

mysql> insert into DemoTable1412 values('John Adam Carol');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1412 values('Mike Sam');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1412 values('Chris James Robert');
Query OK, 1 row affected (0.15 sec)

使用 select 显示表格中的所有记录 −

mysql> select * from DemoTable1412;

这将产生以下输出 −

+--------------------+
| Name               |
+--------------------+
| John Adam Carol    |
| Mike Sam           |
| Chris James Robert |
+--------------------+
3 rows in set (0.00 sec)

以下查询可以检查某一行是否有两个空格分隔的单词 −

mysql> select * from DemoTable1412 where Name regexp '^[^ ]+[ ]+[^ ]+$';

这将产生以下输出 −

+----------+
| Name     |
+----------+
| Mike Sam |
+----------+
1 row in set (0.00 sec)

更新于: 2019-11-12

301 浏览

开启你的职业生涯

完成教程以获得认证

开始
广告