小编sta*_*ack的帖子

ORDER BY 被忽略,因为表中有一个用户定义的聚集索引

我有一张桌子

CREATE TABLE `tableMain` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `value1` varchar(45) NOT NULL,
   'value2' varchar(50) NOT NULL,
   'value3' int NOT NULL,
   'value4' timestamp NOT NULL,
   'value5' int NOT NULL
PRIMARY KEY (`id`)
)
Run Code Online (Sandbox Code Playgroud)

所以我创建了那个表,我希望它总是按 value2 排序,如果有两个 a like,它应该按 value3 排序,然后按 value4 排序。

所以我试着这样做

ALTER TABLE tableMain
ORDER BY value2 ASC, value3 ASC, value4 ASC
Run Code Online (Sandbox Code Playgroud)

当我运行该代码时,出现错误:

错误代码:1105。ORDER BY 被忽略,因为表 'tableMain' 中有一个用户定义的聚集索引

我想补充一点,我把它作为学校的作业,其他有相同任务的人可以运行这个 ALTER TABLE 行。所以我有点困惑,不知道该怎么办。

mysql sorting sql-order-by

2
推荐指数
1
解决办法
1789
查看次数

标签 统计

mysql ×1

sorting ×1

sql-order-by ×1