在MySQL中按设置顺序选择
为此,您需要使用IN()
和之后的FIELD()
方法。让我们首先创建一个表-
mysql> create table DemoTable( StudentId varchar(10), StudentName varchar(20) ) ;
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable values('10001','Adam'); mysql> insert into DemoTable values('1010','Chris'); mysql> insert into DemoTable values('1020','Bob'); mysql> insert into DemoTable values('1030','Carol'); mysql> insert into DemoTable values('1040','Sam');
使用select语句显示表中的所有记录-
mysql> select *from DemoTable;
这将产生以下输出-
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 10001 | Adam | | 1010 | Chris | | 1020 | Bob | | 1030 | Carol | | 1040 | Sam | +-----------+-------------+ 5 rows in set (0.00 sec)
以下是在MySQL中按设置顺序选择的查询-
mysql> select *from DemoTable where StudentId IN('1040','1010','1020','1030','10001') order by FIELD(StudentId,'1040','1010','1020','1030','10001');
这将产生以下输出-
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 1040 | Sam | | 1010 | Chris | | 1020 | Bob | | 1030 | Carol | | 10001 | Adam | +-----------+-------------+ 5 rows in set (0.02 sec)