MySQL 查询仅显示包含单个单词的记录?

mysqlmysqli database

为此,您可以根据 LIKE 过滤记录。让我们首先创建一个表 −

mysql> create table DemoTable
(
   Name varchar(50)
);
Query OK, 0 rows affected (0.50 sec)

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

mysql> insert into DemoTable values('John Smith');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('John');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('Adam Smith');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('Carol');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('David Miller');
Query OK, 1 row affected (0.10 sec)

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

mysql> select *from DemoTable;

这将产生以下输出 −

+--------------+
| Name         |
+--------------+
| John Smith   |
| John         |
| Adam Smith   |
| Carol        |
| David Miller |
+--------------+
5 rows in set (0.00 sec)

以下查询显示包含单个单词的记录。此处使用 NOT LIKE 排除包含多个单词的记录,即 NOT LIKE '% %' −

mysql> select *from DemoTable where Name not like '% %';

这将产生以下输出 −

+-------+
| Name  |
+-------+
| John  |
| Carol |
+-------+
2 rows in set (0.00 sec)

相关文章