MySQL 语法错误:near 'order' - 如何修复 SQL 查询中的 ORDER BY 和 LIMIT 位置错误

你是否在运行以下 SQL 查询时遇到 'near 'order': syntax error' 错误?

select * from docker_log where 1=1 limit 0,20 order by create_time

docker_serv 日志中也出现了类似的错误信息:

docker_serv ERROR 2023-07-19 15:22:42.949114 /data/wufan/docker_serv/logs/dao/LogDb.go:101 near 'order': syntax error
docker_serv ERROR 2023-07-19 15:22:42.949128 /data/wufan/docker_serv/logs/service/Logs.go:52 near 'order': syntax error
docker_serv ERROR 2023-07-19 15:22:42.949144 /data/wufan/docker_serv/router/LogsController.go:50 near 'order': syntax error

原因:

这个错误是因为在 SQL 语句中 ORDER BY 子句的位置不正确。在使用 LIMITORDER BY 子句时,LIMIT 子句应该始终位于 ORDER BY 子句之后

解决方案:

要解决此错误,您需要调整 SQL 查询中 LIMITORDER BY 子句的顺序。请将 LIMIT 子句放在 ORDER BY 子句之后,如下所示:

SELECT * FROM docker_log WHERE 1=1 ORDER BY create_time LIMIT 0,20;

通过将 LIMIT 子句放在正确的位置,您的 SQL 查询现在应该可以正常工作了。

要点:

  • 在使用 LIMITORDER BY 子句时,请记住 LIMIT 必须始终放在 ORDER BY 之后。
  • 仔细检查您的 SQL 查询语法,以确保所有子句都按正确的顺序排列。

通过遵循这些简单的步骤,您可以轻松解决 'near 'order': syntax error' 错误,并确保您的 SQL 查询按预期执行。

MySQL 语法错误:near 'order' - 如何修复 SQL 查询中的 ORDER BY 和 LIMIT 位置错误

原文地址: https://www.cveoy.top/t/topic/fPCg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录