如何从重复条目列表中选择最大值

时间:2012-05-14 02:01:12

标签: sql

我试图查询包含交易列表的数据库。我需要的交易必须具有特定的状态,如果存在重复的成本代码,查询应该只返回ID号最高的ID

我的样本表如下, 表名= foo, 我需要的状态是3

ID       transaction date     status     cost code
1         20120101               3           5
2         20120101               3           5
3         20120101               4           7

在这个例子中我需要的是ID 2

由于

3 个答案:

答案 0 :(得分:4)

select * from foo where status = 3 order by id desc limit 1;

您可以将3替换为您有兴趣检索的状态。

“按ID desc限制1的顺序”短语将满足“具有最高ID号的ID”约束。

答案 1 :(得分:0)

如果所选列相同,您可以使用MAX获取最高ID号

SELECT transaction_date, Status, cost_code, MAX(ID) As ID
FROM foo
GROUP BY transaction_date, Status, cost_code

答案 2 :(得分:0)

使用此查询:

SELECT MAX(ID) AS MaxID
FROM foo
WHERE status = 3