我想一次获取我的结果一个“页面”;我希望页码是一个参数(在 JDBC 准备语句中)。考虑以下代码段
SELECT * FROM thread t ORDER BY t.id LIMIT ((? - 1) * 20), 20
因此,理想情况下,对于第 1 页,这将导致LIMIT 0, 20
.
当我测试
SELECT * FROM thread t ORDER BY t.id LIMIT ((1 - 1) * 20), 20
我被告知我有一个语法错误。不过,我看不出它可能是什么——这只是一些简单的数学运算。它告诉我的只是
ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '((1 - 1) * 20), 20' 附近使用正确的语法
我的LIMIT
条款做错了什么,我该如何解决?