MySQL 如何使用两个LIKE语句
您可以使用以下语法使用两个like语句进行或运算 −
SELECT *FROM yourTableName WHERE (yourColumnName like '%yourValue1%' OR yourColumnName like '%yourValue2%') AND yourColumnName = yourValue;
要了解上述语法,让我们创建一个表。创建表的查询如下所示−
mysql> create table ORLikeDemo
-> (
-> Id int not null auto_increment,
-> FirstName varchar(15),
-> LastName varchar(15),
-> Primary Key(Id)
-> );
Query OK, 0 rows affected (1.19 sec)
使用insert命令在表中插入一些记录。查询如下所示−
mysql> insert into ORLikeDemo(FirstName,LastName) values('John','Smith');
Query OK, 1 row affected (0.13 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('Carol','Taylor');
Query OK, 1 row affected (0.23 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('John','Doe');
Query OK, 1 row affected (0.11 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('Bob','Jones');
Query OK, 1 row affected (0.20 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('David','Miller');
Query OK, 1 row affected (0.17 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('Mike','Williams');
Query OK, 1 row affected (0.11 sec)
mysql> insert into ORLikeDemo(FirstName,LastName) values('Sam','Taylor');
Query OK, 1 row affected (0.14 sec)
使用select语句从表中显示所有记录。查询如下所示−
mysql> select *from ORLikeDemo;
输出如下所示−
+----+-----------+----------+
| Id | FirstName | LastName |
+----+-----------+----------+
| 1 | John | Smith |
| 2 | Carol | Taylor |
| 3 | John | Doe |
| 4 | Bob | Jones |
| 5 | David | Miller |
| 6 | Mike | Williams |
| 7 | Sam | Taylor |
+----+-----------+----------+
7 rows in set (0.00 sec)
下面是使用OR运算符的两个LIKE的查询 −
mysql> select *from ORLikeDemo where (LastName like '%Smith%' OR LastName like'%Doe%') AND Id = 3;
输出如下所示−
+----+-----------+----------+
| Id | FirstName | LastName |
+----+-----------+----------+
| 3 | John | Doe |
+----+-----------+----------+
1 row in set (0.03 sec)
阅读更多:MySQL 教程
极客教程