如何在mysql中使用group by从表中获取最新数据?

时间:2016-05-10 05:37:31

标签: mysql

在我的表中,共有两个用户“joo”和“foo”的五个条目。我需要选择这些用户的最后一个数据行。我尝试过查询但只获得第一个值。

例如:joo最后一个数据行为id 3。     foo最后一个数据行为id 5

我需要id 3 and 5的数据。

查询

    SELECT id, company, title, firstname, street,  
           postal, city,  country, phone, payment_type
    FROM orders
    GROUP BY firstname

我收到了结果

id company title firstname street  postal city  country phone payment_type
1   BMW    test1  joo       test1  test1  test1 test1   1234  online
4   BMW    test4  foo       test4  test4  test4 test4   6666  amazone

FUll table

id company title firstname street  postal city  country phone payment_type
1   BMW    test1  joo       test1  test1  test1 test1   1234  online
2   BMW    test2  joo       test2  test2  test2 test2   1233  amazone
3   BMW    test3  joo       test3  test3  test3 test3   5555  paypal
4   BMW    test4  foo       test4  test4  test4 test4   6666  amazone
5   BMW    test5  foo       test5  test5  test5 test5   7777  paypal

1 个答案:

答案 0 :(得分:0)

试试这个

 SELECT id, company, title, firstname, street,  
               postal, city,  country, phone, payment_type
        FROM orders where id in( SELECT max(id) from orders group by firstname );