使用单个查询从MySQL表的另一列中以自定义顺序选择值

为此,您可以使用IN()

让我们首先创建一个表:

mysql> create table DemoTable727 (
   Name varchar(100),
   Score int
);

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

mysql> insert into DemoTable727 values('Chris',45);
mysql> insert into DemoTable727 values('Robert',89);
mysql> insert into DemoTable727 values('Carol',94);
mysql> insert into DemoTable727 values('David',93);
mysql> insert into DemoTable727 values('Mike',78);
mysql> insert into DemoTable727 values('Sam',67);

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

mysql> select *from DemoTable727;

这将产生以下输出-

+--------+-------+
| Name   | Score |
+--------+-------+
| Chris  | 45    |
| Robert | 89    |
| Carol  | 94    |
| David  | 93    |
| Mike   | 78    |
| Sam    | 67    |
+--------+-------+
6 rows in set (0.00 sec)

以下是通过单个查询从MySQL表的另一列中按自定义顺序选择值的查询:

mysql> select Score from DemoTable727 where Name IN('Robert','David','Sam');

这将产生以下输出-

+-------+
| Score |
+-------+
| 89    |
| 93    |
| 67    |
+-------+
3 rows in set (0.00 sec)