要在MySQL中按单词排序,您需要使用ORDER BY FIELD()
。让我们首先创建一个表-
mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(20), StudentFavouriteSubject varchar(100) );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable(StudentFirstName,StudentFavouriteSubject) values('Larry','Java'); mysql> insert into DemoTable(StudentFirstName,StudentFavouriteSubject) values('Sam','C'); mysql> insert into DemoTable(StudentFirstName,StudentFavouriteSubject) values('Bob','MongoDB'); mysql> insert into DemoTable(StudentFirstName,StudentFavouriteSubject) values('David','MySQL');
使用select语句显示表中的所有记录;
mysql> select *from DemoTable;
这将产生以下输出-
+-----------+------------------+-------------------------+ | StudentId | StudentFirstName | StudentFavouriteSubject | +-----------+------------------+-------------------------+ | 1 | Larry | Java | | 2 | Sam | C | | 3 | Bob | MongoDB | | 4 | David | MySQL | +-----------+------------------+-------------------------+ 4 rows in set (0.00 sec)
以下是对MySQL中的单词ORDER BY的查询-
mysql> select *from DemoTable ORDER BY FIELD(`StudentFavouriteSubject`, 'MongoDB','MySQL','Java','C');
这将产生以下输出-
+-----------+------------------+-------------------------+ | StudentId | StudentFirstName | StudentFavouriteSubject | +-----------+------------------+-------------------------+ | 3 | Bob | MongoDB | | 4 | David | MySQL | | 1 | Larry | Java | | 2 | Sam | C | +-----------+------------------+-------------------------+ 4 rows in set (0.03 sec)