Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z MAX()
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
jezoo
Witam, mianowicie nie wiem czemu nie chce mi zwrucic najwyzszej daty z tabeli, a zapytanie wyglada tak:
  1. SELECT jd_stays.idpat, jd_patients.namesurname,jd_stays.regdate
  2. FROM jd_patients,jd_stays WHERE jd_patients.idpat=jd_stays.idpat AND MAX(jd_stays.regdate);


a odp postgresa wglada tak:
Cytat
ERROR: argument of AND must be type boolean, not type date
Stan SQL:42804
nospor
Cytat
nie wiem czemu nie chce mi zwrucic najwyzszej daty z tabeli
no chyba ci wyraźnie napisal:
Cytat
ERROR: argument of AND must be type boolean, not type date
argumenty dla AND muszą byc boolenem a nie datą. a przeciez max(data) to tez data a nie boolean.
powinno chyba byc: data = max(data). piszę "chyba" gdyz na temat PostgreSQL wiem tyle co nic. Po prostu zgaduje
jezoo
manual nigdy nie gryzie smile.gif

w koncu znalazlem jak ma wygladac poprawnie zapytanie z wykozystaniem funkcji MAX.
manual mowi:
Cytat
(...)funkcja max nie może być użyta z WHERE(...)


ma nastepujaca budowe
  1. SELECT nazwisko FROM klienci WHERE DATA=(SELECT MAX(DATA) FROM klienci);


@nospor dzieki za podpowiec smile.gif
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.