2012-05-14 101 views
0

我试图查询包含事务列表的数据库。我需要必须是一个特定的状态,如果重复的成本代码交易存在的查询应该只返回最高的ID号如何从重复条目列表中选择最大值

我的样表如下, 表名= FOO的ID, 状态是我需要的是3

ID  transaction date  status  cost code 
1   20120101    3   5 
2   20120101    3   5 
3   20120101    4   7 
在这个例子中

我需要的是ID 2

由于

+1

Ummmm ....'选择2作为ID;'严重,我不知道你想问什么。 – 2012-05-14 02:03:13

+0

@jackManey,我希望这会很容易。但我需要的是状态为3的所有行,并且如果重复出现在成本代码中,那么将返回具有最高ID编号的成本代码...对不起,如果我没有使这个问题更清楚。潘恩已经提供了我正在寻找的答案。谢谢! – ides

回答

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

您可以用您感兴趣检索的任何状态替换3。

“按ID标识限制1”的短语将满足“ID号最高的ID”限制条件。

+0

感谢您提供简单明了的答案! – ides

0

您可以使用MAX以获得最高的ID号,如果选中的列相同

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

使用此查询:

SELECT MAX(ID) AS MaxID 
FROM foo 
WHERE status = 3 
相关问题