轻松在 MySQL 中重新排序列的方法是什么?


要重新排序 MySQL 中的列,请使用 ALTER TABLE MODIFY COLUMN。语法如下 -

ALTER TABLE yourTableName MODIFY COLUMN yourColumnName data type after yourColumnName.

为了理解上述语法,我们首先创建一个表。创建表的查询如下。

mysql> create table reOrderColumn
-> (
-> ProductId int,
-> DeliveryDate datetime,
-> ProductName varchar(100)
-> );
Query OK, 0 rows affected (0.76 sec)

现在检查该表的描述信息。查询如下:

mysql> desc reOrderColumn;

以下是输出。

+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| ProductId | int(11) | YES | | NULL | |
| DeliveryDate | datetime | YES | | NULL | |
| ProductName | varchar(100) | YES | | NULL | |
+--------------+--------------+------+-----+---------+-------+
3 rows in set (0.10 sec)

现在使用 ALTER MODIFY 命令重新排序列。我将在ProductName 列之后重新排序 DeliveryDate 列。查询如下所示。

mysql> alter table reOrderColumn modify column DeliveryDate datetime after ProductName;
Query OK, 0 rows affected (1.61 sec)
Records: 0 Duplicates: 0 Warnings: 0

现在让我们检查列是否已重新排序。查询如下所示。

mysql> desc reOrderColumn;

以下是显示列已重新排序的输出。

+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| ProductId | int(11) | YES | | NULL | |
| ProductName | varchar(100) | YES | | NULL | |
| DeliveryDate | datetime | YES | | NULL | |
+--------------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

更新于:2019 年 7 月 30 日

9K+ 浏览量

开启您的职业生涯

完成课程获取认证

立即开始
广告
© . All rights reserved.