Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: GROUP BY z warunkiem
Forum PHP.pl > Forum > Bazy danych > MySQL
kask18
Witam mam taki oto problem.

Przykładowa tabela: tabela
id | program | kwota
1 | x | 10
2 | y | 7
3 | x | 5

Chciałbym żeby zrobić zapytanie które pobierze mi unikatowe programy wraz z kwotami. Te rekordy to muszą być zawsze
rekordy z największym id przy unikatowym programie. Oczekiwany wynik


id | program | kwota
1 | x | 10
3 | x | 5

Próbowałem coś kombinować z zapytaniem GROUP BY ale ono zwraca mi zawsze pierwszy zawsze pierwsze rekordy w których znajduje się uniktowy program. Da się to jakoś obejść ? Z gróry dzięki za pomoc.
Mchl
Kod
SELECT
  id, program, kwota
FROM
tabela AS t
CROSS JOIN (
  SELECT MAX(id) AS id, program FROM tabela GROUP BY program
) AS sq
USING(id, program)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.