如何从单个组中获取最后一条记录

时间:2014-04-14 05:11:56

标签: mysql sql sql-server group-by sql-order-by

我有以下类型的表。我想输出特定组的最后一条记录(最近的)。请建议我的sql查询。

    Id Name    random number
    -------------------------
    1   A         1233
    2   A         1778
    3   A         1221
    4   B         1298
    5   B         1289
    6   C         1267

我想要A组的最后一条记录

e.g。

        ID  Name  Random number
       ----------------------
        3    A      1221

3 个答案:

答案 0 :(得分:5)

select id, name, random from table where Name='A' order by id desc limit 1

答案 1 :(得分:2)

这是查询:

select * from tbl where id IN (select max(id) from tbl group by name);

这里有小提琴:http://sqlfiddle.com/#!2/01d69/8

答案 2 :(得分:1)

SELECT * From Table1 Where [Id] in (
SELECT Max([Id]) as [maxId] From Table1 Where [Name] = 'A')

<强> Fiddle