Nie mam pomysłu jak napisać pewną sql'kę w Oracle SQL

Załóżmy że mam projekt sklepu gdzie mam przechowywane statusy zamówienia.

nr zamowienia | nazwa_statusu | data
12 | zamowiono | jakas data
12 | zwrocono| NULL
12 | oplacono | jakas data
12 | wyslano| NULL

Chciałbym napisać logikę/flagę która brałaby pod uwagę niejako stany poprzednich rekordów, czyli np. "wybierze zamówienia, które dla 'nazwa statusu'= zamówiono ma date w kolumnie data, a
@Meteor100: od biedy możesz zrobić (o ile się nie mylę) joina tabeli do siebie po numerze zamówienia

SELECT o1.numer
FROM orders o1
JOIN orders o2 ON o1.numer = o2.numer
WHERE
(o1.status = 'x' AND o1.data IS NULL) && (o2.status = 'y' AND o2.data IS NOT NULL)
  • Odpowiedz