2012-05-11 50 views
0

我想构建一个SQL语句,将选择最高的ID,但只有最高值,如果重复存在。如何删除重复项,并获得最大的价值

ID - 值

  • 1491825 - 3339
  • 1491824 - 3170
  • 1491823 - 3143
  • 1491822 - 3422
  • 1491821 - 3422
  • 1491820 - 3422
  • 1491819 - 3422
  • 1491818 - 3422
  • 1491817 - 3261
  • 1491816 - 3170
  • 1491815 - 3170
  • 1491814 - 3170
  • 1491813 - 3170
  • 1491812 - 3170
  • 1491811 - 3170
  • 1491810 - 3170
  • 1491809 - 3170
  • 1491808 - 3170
  • 1491807 - 3251
  • 1491806 - 3422

期望输出

ID - 值

  • 1491825 - 3339
  • 1491824 - 3170
  • 1491823 - 3143
  • 1491822 - 3422
  • 1491817 - 3261
  • 1491807 - 3251
+0

从(表名)ORDER BY(列名)ASC – AurA

+0

@AurA我想你可能误解了这个问题选择不同(列名)一点。 –

+0

雅我明白了....now – AurA

回答

3
select max(id),value From foo 
group by value 
order by max(id) desc 

参见: http://www.sqlfiddle.com/#!3/4ee34/3

编辑。该死。被旁观者殴打。

+0

+1 Sql小提琴链接 – AlphaMale

+0

您的订单由max(id)desc分隔2条语句以及sqlfiddle链接。 – Gram

1

如何像

SELECT MAX(id) as id 
     value 
FROM YourTable 
GROUP BY value 
-1

的MAX()函数的真实,最佳答案