Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie i grupowanie? danych z MySQL
ostrylg
post
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 18
Dołączył: 11.12.2005
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Witam,

mam taką bazę danych

uczen_glosy

uczen_id | glos | data

uczeń id to id ucznia na którego był oddany głos, glos to wartość głosu (0 albo 10) oraz data gdzie zapisuję datę oddania głosu w formacie datatime ( Y-m-d h:i:s)

potrzebuję zbudować takie zapytanie które pobierze mi wszystkie głosy z tej tabeli z ostatnich 24 godzin, zliczy ilość głosów na poszczególnego ucznia oraz wartość tych głosów tak żebym mógł obliczyć średnią jaką otrzymał dany uczeń w ostatnich 24 godzinach. Na tę chwilę mam takie zapytanie

  1. SELECT uczen_id,glos,DATA FROM uczen_glosy WHERE DATE_SUB(CURDATE(),INTERVAL 24 HOUR) <= DATA


które zwraca mi rekordy z ostatnich 24 godzin. Jak poradzić sobie z obliczeniem średniej dla każdego ucznia ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ostrylg
post
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 18
Dołączył: 11.12.2005
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Dla potrzebujących (IMG:style_emoticons/default/smile.gif)

  1. SELECT uczen_id, COUNT( uczen_id ) AS ilosc_glosow, SUM( glos ) AS suma_glosow, AVG( glos )
  2. FROM uczen_glosy
  3. WHERE DATE_SUB( CURDATE( ) , INTERVAL 24 HOUR ) <= DATA
  4. GROUP BY uczen_id
  5. LIMIT 0 , 30


Dzięki wielkie za pomoc.

--
edit

Jeszcze małe pytanie, jak wrzucam w zapytanie żeby pobierał tylko rekordy z minimalną ilością głosów to wyskakuje błąd

  1. SELECT uczen_id,suma_glosow,COUNT(uczen_id) AS ilosc_glosow, SUM(glos) AS suma_glosow, AVG(glos)
  2. FROM uczen_glosy WHERE DATE_SUB(CURDATE(),INTERVAL 24 HOUR) <= DATA && suma_glosow > 2 GROUP BY uczen_id


wyskakuje mi

Unknown column 'suma_glosow' in 'where clause'

jak użyć pola 'suma_glosow' w tym zapytaniu ?



Ten post edytował ostrylg 11.08.2011, 13:34:42
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 04:13