Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Średnia z ostatnich 10 rekordow
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
martin1978
Witam
  1. SELECT nazwa, avg(wartosc), time FROM tabela WHERE nazwa='napiecie' ORDER BY time DESC LIMIT 10


Nie wiem co robię źle w zapytaniu...?

ale wiem co chce osiągnąć smile.gif, chce pobrać 10 ostatnich rekordów i obliczyć z nich średnią i to wszystko smile.gif

Tylko nie wychodzi mi to zapytanie, wiec proszę o pomoc, gdzie robię błąd?

Z góry dziękuję za odpowiedź
Pozdrawiam
luckyps
Mi tam brakuje jeszcze grupowania wink.gif
martin1978
"lucky" a co mi da grupowanie po "czymś tam"??
Mi chodzi o to, żeby zapytanie wyliczyło mi średnią arytmetyczną z tych ostatnich dziesięciu rekordów - czyli będzie tylko 1 wynik.
Więc nie widzę tutaj zastosowania group by, chyba że w czymś się mylę ...?
Pozdrawiam
webdice
  1. SELECT `a`.`name`, AVG(`a`.`value`) FROM (SELECT `name`, `value` FROM `table` ORDER BY `value` DESC LIMIT 10) AS `a`


PS. Limit w podzapytaniu nie działa w starszych wersjach MySQL.
martin1978
"webdice"
dotyczy P.S. nie MYSQL a PG

Ok. mam rozwiazanie
  1. SELECT avg (value) FROM (SELECT * FROM tabela WHERE name='napiecie' ORDER BY time DESC LIMIT 10) AS wynik
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-2024 Invision Power Services, Inc.