Dashier ergibt den 1. Satz vor dem heutigen Datum
SQL-Code:
select
first 1 lieferant, gueltig_ab
from
ARTIKEL_PREIS_EK_K
where
artikel_nr = :artikel_nr and
gueltig_ab < CURRENT_DATE
order by
gueltig_ab desc
Wir benötigen alle Sätze aus ARTIKEL_PREIS_EK_K, deren gültig_ab >= diesem Datum ist:
SQL-Code:
select k.lieferant, k.gueltig_ab
from ARTIKEL_PREIS_EK_K k
where k.artikel_nr = :artikel_nr
and exists
(
select 1 from ARTIKEL_PREIS_EK_K D
where d.artikel_nr = :artikel_nr
and d.gueltig_ab < CURRENT_DATE
and k.lieferant = d.lieferant
and k.gueltig_ab >= d.gueltig_ab
)
group by k.lieferant, k.gueltig_ab
Ungetestet hingedaddelt.