Witam serdecznie,
Mam problem z którym nie potrafię sobie poradzić:
Mianowicie mam wyciągnąc największą datę dla danego id które się powtarza.
Używając podzapytania z MAX(data) wyciąga mi jeden wiersz dla całej tabeli albo nic.
struktura tabeli
cena_id (unikalne), towar_id (powtarza sie), data_waznaod (moga byc takie same), rodzaj_cen_towaru (powtarza sie), kwota
Chodzi o to mianowicie by wyciągnąć najnowszą datę z kwotą dla towaru_id (które powtarza się z różnymi datami, połączone tabele INNER JOIN )
Moje próby to:
SELECT *
FROM cena
WHERE data_waznaod =
(SELECT DISTINCT cena.towar_id, MAX(cena.data_waznaod)
FROM cena
group by cena.towar_id)
Select *
FROM cena
WHERE data_waznaod = (SELECT MAX(data_waznaod)
FROM cena)
z reguły albo mi wyciąga jeden wiersz albo nic, cale zapytanie:
SELECT TOP 100 PERCENT towar.towar_ident AS 'Identyfikator', towar.nazwa AS 'Nazwa towaru',
cena.data_waznaod, cena.kwota AS 'Cena NETTO'
FROM towar INNER JOIN
cena ON towar.cena_id = cena.cena_id
WHERE (towar.ilosc > 0) AND (cena = (SELECT MAX(data_waznaod) FROM cena)
Próbowałem w INEER JOIN dodając klauzulę WHERE z podzapytaniem SELECT,
Wiec prosiłbym chociaż o jakąś odpowiedź, nie musi to być nawet rozwiązanie.
Ponieważ już stworzyłem dość dużo wersji zapytań, z których wynika że można to zrobić na różne sposoby z których żaden nie wyciąga mi potrzebnych informacji, ale kręcę się nadal w miejscu.
Pozdrawiam.