我正在尝试执行以下 mySQL 查询:
SELECT
SQL_CALC_FOUND_ROWS,
TIMESTAMPDIFF(DAY, date_identified,
IFNULL(date_closed,
CURDATE())) as days_open,
*
FROM (`risks`)
ORDER BY `WBS` ASC LIMIT 10
但我一直收到错误。但是,如果我删除 SQL_CALC_FOUND_ROWS
和 *
而是执行以下操作:
SELECT
id, TIMESTAMPDIFF(DAY, date_identified,
IFNULL(date_closed,
CURDATE())) as days_open
FROM (`risks`)
ORDER BY `WBS` ASC LIMIT 10
然后查询执行成功。有什么方法可以更改此查询以包含 SQL_CALC_FOUND_ROWS
和 *
?
最佳答案
sql_calc_found_rows
是指令,不是字段,后面不要加逗号:
SELECT SQL_CALC_FOUND ROWS field1, field2, calc1, calc2, etc...
^--- no comma
它类似于 INSERT IGNORE
- ignore 是一个指令,而不是一个字段。
关于php - 如何在 SELECT 语句 mySQL 中做 * 和计算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21027809/