towary; id, nazwa itd
faktury; id, dostawca, data zakupu itd
tabelę haszującą; id_towary, id_faktury, ceny zakupu itd
Jeden towar jest kupowany w wielu latach a ja potrzebuję wyciągnąć je z ostatnich dat w jakich zostały zakupione.
Niestety moje Selecty wyciągają wszystkie daty zakupów.
Jeśli zastosuję MAX(data_zak) to zaś wyfiltruje mi z ostatniego dnia, czyli nie wszystkie jakie chciałbym otrzymać.
Kod
SELECT t.id_towar, t.nazwa, f.data_zak
FROM towar t
LEFT JOIN (faktura f, faktura_has_towar thf)
ON (t.id_towar=thf.id_towar AND f.id_faktura=thf.id_faktura )
WHERE t.nazwa LIKE '%jakaś niepełna nazwa towaru%' AND f.data_zak=(SELECT MAX(f.data_zak) FROM faktura f) ORDER BY t.nazwa, f.data_zak ASC
FROM towar t
LEFT JOIN (faktura f, faktura_has_towar thf)
ON (t.id_towar=thf.id_towar AND f.id_faktura=thf.id_faktura )
WHERE t.nazwa LIKE '%jakaś niepełna nazwa towaru%' AND f.data_zak=(SELECT MAX(f.data_zak) FROM faktura f) ORDER BY t.nazwa, f.data_zak ASC
Już nie wiem jak mam wyfiltrować towary aby nie wychodziły ze wszystkimi datami.
Mała prośba, nie odsyłajcie mnie do nie polskich stron bo ja niestety bardzo dawno temu uczyłem się tylko wschodniego języka którego i tak się nie nauczyłem