在SQL中选择最大订单号

在SQL中选择最大订单号,sql,mysql,Sql,Mysql,我有一个记录操作序列的表,其中有一个字段记录序列顺序: user data sequence 1 foo 0 1 bar 1 1 baz 2 2 foo 0 3 bar 0 3 foo 1 使用WHERE sequence='0'为每个用户选择第一项非常简单,但是在SQL中是否有方法为每个用户选择最后一项 我所追求的结果应该是这样的: user data

我有一个记录操作序列的表,其中有一个字段记录序列顺序:

user    data    sequence
1       foo     0
1       bar     1
1       baz     2
2       foo     0
3       bar     0
3       foo     1
使用WHERE sequence='0'为每个用户选择第一项非常简单,但是在SQL中是否有方法为每个用户选择最后一项

我所追求的结果应该是这样的:

user    data    sequence
1       baz     2
2       foo     0
3       foo     1

如果有任何特定于实现的骗子回答,我将使用MySQL。

此sql将为每个用户返回具有最高序列值的记录:

select a.user, a.data, a.sequence
from table as a
    inner join (
        select user, max(sequence) as 'last'
        from table 
        group by user) as b
    on a.user = b.user and 
       a.sequence = b.last

嗯,我希望内部连接选择用户,maxsequence作为“last”从表中按用户分组,作为a.user=b.user上的b。我想对这个问题有不同的解释。暂时性从技术上讲是正确的最好的一种正确。啊,你说得对,谢谢。他按用户分组,只显示了最后的数据。在将元变量转换为我的数据时,我得到了正确的结果。这可能是最简单但优雅的解决方案,只返回一项。问题是每个用户的最大序列。Keith的答案很准确,你需要一个相关的查询来做这件事吗?
select top 1 
       user
       ,data
       ,sequence
 from table
order
   by sequence