You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL新手求助:使用SELECT、ORDER BY等语句时出现语法错误

问题解答

错误原因

使用SQL_CALC_FOUND_ROWS时,SELECT关键字后必须明确指定要查询的列(比如用*代表所有列,或者指定具体列名),不能直接衔接FROM子句。你的语句里SELECT SQL_CALC_FOUND_ROWS后缺少列或通配符,违反了MySQL的语法规则。

修正后的SQL语句

如果需要查询表中所有列:

SELECT SQL_CALC_FOUND_ROWS *
FROM personas 
ORDER BY nombre ASC 
LIMIT 0, 10;

如果只需要特定列(例如id、nombre):

SELECT SQL_CALC_FOUND_ROWS id, nombre
FROM personas 
ORDER BY nombre ASC 
LIMIT 0, 10;

补充说明

SQL_CALC_FOUND_ROWS的作用是让MySQL计算去掉LIMIT限制后会返回的总行数,执行完上述查询后,你可以通过SELECT FOUND_ROWS();获取这个总条数,这在分页场景中很实用——能同时拿到当前页数据和总数据量。

内容的提问来源于stack exchange,提问作者Abuelito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 06:09:24