Max z drugiej tabeli Access 2016

Odpowiedz Nowy wątek
2017-09-22 10:19

Rejestracja: 2 lata temu

Ostatnio: 2 lata temu

0

Witam,
Mam banalne pytanie o wyciągnięcie Max dla kolumny Czas z tabeli Liczniki dla każdego pojazdu z tabeli Pojazdy. Poniżej obraz 2 tabel z danymi oraz tabela wynikowa jaką chcę otrzymać.
Baza danych w Access 2016.

screenshot-20170922101618.png

Wyciągnięcie czasu jest proste, ale chcesz jeszcze licznik. To trochę komplikuje. Szkoda, że nie pokazałeś do czego sam doszedłeś. Ale tabelki są ładne :) - jarekczek 2017-09-22 10:36

Pozostało 580 znaków

2017-09-22 12:07

Rejestracja: 7 lat temu

Ostatnio: 19 godzin temu

0

Powinno zwracać to co chcesz

select 
  p.nr_rej,
  l.czas,
  l.licznik
from
  pojazdy p
  left join (select nr_rej, czas, licznik from liczniki where (nr_rej, czas) in (select nr_rej, max(czas) czas from liczniki group by nr_rej)) l on l.nr_rej = p.nr_rej

BTW w tabeli liczniki zamiast kolumny nr_rej powinno być id z pojazdy


Chcesz pomocy - pokaż kod - abrakadabra źle działa z techniką.

Pozostało 580 znaków

Zimny Terrorysta
2017-09-22 12:28
Zimny Terrorysta
0

Można np. tak:

SELECT Id, Nr_rej,Czas, Liczniki.Licznik
FROM
(SELECT id, Pojazdy.Nr_rej AS Nr_rej, Max(Liczniki.Czas) AS Czas
FROM Liczniki LEFT JOIN Pojazdy ON Liczniki.Nr_rej = Pojazdy.Nr_rej
GROUP BY Id, Pojazdy.Nr_rej) AS Q
LEFT JOIN Liczniki ON  Liczniki.Nr_rej=Q.Nr_rej AND Liczniki.Czas=Q.Czas 

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0