首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最大ID错误的MySql select?

最大ID错误的MySql select?
EN

Stack Overflow用户
提问于 2012-05-02 03:30:51
回答 2查看 323关注 0票数 1

当我运行select时

SELECT id, MAX(amount) AS value FROM bids

它似乎返回了错误的id...它返回第一个id值,而不是最大(数量)选定的id。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-02 03:33:56

这是意料之中的--您使用的聚合函数没有任何“group by”子句。MySQL是礼貌的,假设你想要一个全局最大值,而你很可能想要这样做:

代码语言:javascript
复制
SELECT id, MAX(amount) AS value
FROM bids
GROUP BY id
票数 2
EN

Stack Overflow用户

发布于 2012-05-02 03:33:27

你需要这样做(尽管我不确定这是获得你想要的数据的最好方法):

代码语言:javascript
复制
SELECT id
FROM bids
WHERE amount = MAX(amount)

您也许可以添加一个LIMIT或一个ORDER BY子句(或者同时添加这两个子句),以进一步减少您要查找的数据。

您还可以尝试:

代码语言:javascript
复制
SELECT id
FROM bids
ORDER BY amount DESC
LIMIT 1

获取表中最大amount的单个id。如果您这样做,您最终会希望在amount字段上建立索引以加快查询速度。这都是假设您想要与表中最高的amount一起使用的id,仅此而已。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10403132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档