如何在MySQL中选择其中一个列等于某个值的行?
对于这个问题,您可以使用多个OR。首先让我们创建一个表。
mysql> create table DemoTable
(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
FirstName varchar(10),
LastName varchar(10),
Age int,
CountryName varchar(10)
);
Query OK, 0 rows affected (0.58 sec)
使用INSERT命令向表中插入一些记录。
mysql> insert into DemoTable (FirstName, LastName, Age, CountryName) values('John', 'Smith', 21, 'US');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable (FirstName, LastName, Age, CountryName) values('Carol', 'Taylor', 22, 'AUS');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable (FirstName, LastName, Age, CountryName) values('David', 'Miller', 19, 'UK');
Query OK, 1 row affected (0.16 sec)
使用SELECT语句显示表中的所有记录。
mysql> select * from DemoTable;
阅读更多:MySQL 教程
输出
+----+-----------+----------+------+-------------+
| Id | FirstName | LastName | Age | CountryName |
+----+-----------+----------+------+-------------+
| 1 | John | Smith | 21 | US |
| 2 | Carol | Taylor | 22 | AUS |
| 3 | David | Miller | 19 | UK |
+----+-----------+----------+------+-------------+
3 rows in set (0.00 sec)
以下是选择其中一个列等于某个值的行的查询语句。
mysql> select * from DemoTable where FirstName="Carol" OR Age=22 OR CountryName="AUS";
输出
+----+-----------+----------+------+-------------+
| Id | FirstName | LastName | Age | CountryName |
+----+-----------+----------+------+-------------+
| 2 | Carol | Taylor | 22 | AUS |
+----+-----------+----------+------+-------------+
1 row in set (0.00 sec)
极客教程