se da tabela
index| internalID| refNo|data
1 1 12345 11.05.2009
2 2 12345 12.05.2009
3 2 12345 12.05.2009
4 2 12345 12.05.2009
5 3 12345 13.05.2009
6 1 54321 20.06.2009
as vrea ca printr-un select, sa intorc toate inregistrarile pt un anumit refNo care au "data" diferita, dar, in acelasi timp sa contina doar o singura inregistrare in cazul in care campul internalId e identic pe mai multe inregistrari.
in cazul de fata, rezultatul dorit la interogare ar fi:
index|internalID|refNo|data
5 3 12345 13.05.2009
2 2 12345 12.05.2009
1 1 12345 11.05.2009
am incercat cu urmatorul script, dar din pacate imi pastreaza si campurile care contin duplicat de internalID:
select *
from
history2
WHERE [index] IN
(SELECT [index]
FROM history2
WHERE EXISTS(
SELECT null
FROM history2 AS tmptable
WHERE history2.data<>tmptable.data
and history2.internalID<>0
HAVING history2.[index] > MIN(tmptable.[index])
)
and refNo='12345'
)
imi puteti da cateva sugestii va rog?