2016-10-17 3 views
-2

Учитывая следующую таблицу:Выберите только самую последнюю строку таблицы, основанной на поле

Column1 Column2  Column3 
Name1  "2016-05-11" Value1 
Name2  "2016-05-11" Value2 
Name2  "2015-05-17" Value3 
Name3  "2014-07-31" Value4 
Name4  "2011-07-31" Value5 
Name4  "2013-07-31" Value6 
Name4  "2016-09-31" Value7 

Как выбрать только самое последнее значение из COLUMN2 для каждого значения COLUMN1. Таким образом, результат запроса будет таким:

Column1 Column2  Column3 
Name1  "2016-05-11" Value1 
Name2  "2016-05-11" Value2 
Name3  "2014-07-31" Value4 
Name4  "2016-09-31" Value7 

ответ

1

Вы можете использовать где в и выберите максимальную группу по

select column1, column2, column3 
from my_table 
where (column1, column2) in 
      (select column1, max(column2) 
       from my_table 
       group by column1); 
+0

@Strawberry ОП COLUMN2 кажется строка, содержащая дату .. – scaisEdge

+0

ответ обновляется. – scaisEdge

Смежные вопросы