0

例如,如果我的查询返回两行或更多行,我想选择具有最近日期的行。

我正在做这样的事情:

SELECT * FROM Table1 WHERE Name=Mark AND MAX(TIMESTAMP(date(str_to_date(DATE_REGISTERED,'%d/%m/%Y'))))

返回的错误是: #1111 - 组函数的使用无效

4

2 回答 2

2

要将您的结果限制为仅最新的结果(根据您的示例基于名为 DATE_REGISTERED 的字段),您可以这样做

SELECT * FROM Table1 WHERE Name='Mark' ORDER BY STR_TO_DATE(DATE_REGISTERED,'%d/%m/%Y')  DESC LIMIT 1
于 2013-03-24T21:57:26.230 回答
1

您应该使用 order by 语句:

SELECT * FROM Table1 WHERE Name=Mark
order by str_to_date(DATE_REGISTERED,'%d/%m/%Y') DESC LIMIT 1
于 2013-03-24T22:01:41.877 回答