РЕДАКТИРАНЕ Актуализирано, за да не се отчитат дублиращите се стойности на дата за същия varchar2
.
Заменен RANK()
с DENSE_RANK()
така че присвоява последователни рангове, след което се използва distinct
за премахване на дубликатите.
Можете да използвате DENSE_RANK()
SELECT DISTINCT TXT, ENTRY_DATE FROM (SELECT txt, entry_date, DENSE_RANK () OVER (PARTITION BY txt ORDER BY entry_date DESC) AS myRank FROM tmp_txt) Q1 WHERE Q1.MYRANK <3ORDER BY txt, entry_date DESCкод>
Вход:
<пре>txt | въведена_датаxyz | 03/11/2014xyz | 25/11/2014 abc | 19/11/2014 abc | 04/11/2014xyz | 20/11/2014 abc | 02/11/2014abc | 28/11/2014xyz | 25/11/2014 abc | 28/11/2014Резултат:
<пре>txt | въведена_датаabc | 28/11/2014 abc | 19/11/2014xyz | 25/11/2014xyz | 20/11/2014