使用单个查询从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)