MySQL 添加 ORDER BY 时查询崩溃,否则工作正常

MySQL query crashes when ORDER BY is added, works fine otherwise

我正在处理一个包含数千个条目的数据库,对于这个特定的查询,我希望对数据执行一些操作,然后得到按列排序的结果。 ORDER BY 子句导致数据库管理器永远加载并最终崩溃而没有检索到任何结果,否则它工作正常。

我试过以下查询:

SELECT m.*,
timediff(n.hora_origen,m.hora_destino) AS noproductivo,
timediff(m.hora_destino,m.hora_origen) AS productivo

FROM movimientos m JOIN movimientos n

ON m.usuario = n.usuario 
AND n.fecha_origen = m.fecha_origen 
AND n.id>m.id

工作正常,但是,附加了 ORDER BY 子句的同一个查询导致数据库管理器崩溃并且没有产生任何结果:

SELECT m.*,
timediff(n.hora_origen,m.hora_destino) AS noproductivo,
timediff(m.hora_destino,m.hora_origen) AS productivo

FROM movimientos m JOIN movimientos n

ON m.usuario = n.usuario 
AND n.fecha_origen = m.fecha_origen 
AND n.id>m.id

ORDER BY m.id

我需要对数据库结果进行排序,将其排除在外不是完成所需任务的选项。

感谢所有回答的人,很抱歉我之前无法回答,我被告知忘记这个特定的查询,因为我们的团队将专注于创建一个全新的数据库,因为这个数据库构建得非常好.我刚到这家公司不到一个月,发现DB和代码都是这样的,乱七八糟。所以我们要重新开始。无论如何感谢您的回答。

解释:

如果有人对这个问题感到好奇,我们发现数据库的结构设计不佳,然后它迫使我们创建过于复杂的查询,这是我们放弃它的主要原因。

简而言之,糟糕的设计意味着糟糕的性能。我们正在删除以前开发人员的工作并从头开始。