从我的SQL数据库中获取最新的行

时间:2015-05-12 04:19:22

标签: mysql

我有一个表格,其中有一行名为版本。我有2个相同的条目,其中1列表示所有相同行中的abc(唯一)。我有两行如下

ID|Name|Version|Unique_Id
-------------------------
1 |abc |1      | 23
2 |abc1|2      |23
3 |xyz |1      |21
4 |tre |1      |20

我希望结果为

ID|Name|Version|Unique_Id
-------------------------
2 |abc1|2      |23
3 |xyz |1      |21
4 |tre |1      |20

我尝试过Unique_Id分组,结果如下

ID|Name|Version|Unique_Id
-------------------------
1 |abc |1      | 23
3 |xyz |1      |21
4 |tre |1      |20

以下是我正在使用的查询

SELECT *  FROM test
group by Unique_Id
order by Version desc;

我想要每行的最新版本(desc的最高订单)。请帮忙。我怎样才能做到这一点。

1 个答案:

答案 0 :(得分:3)

这样的东西
INSERT INTO tbllogs 
            (logorigin, 
             logaction, 
             loguser, 
             logdate, 
             logoutcome) 
VALUES      (:origin, 
             :action, 
             :user, 
             :dt, 
             :outcome) 

使用子选择来确定id及其最大版本号,然后联接回原始表以检索其他值。

SQL Fiddle DEMO