Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zliczanie rekordów, wybieranie największego.
Forum PHP.pl > Forum > PHP
filipsiu
Witajcie!

Piszę skrypt coś a'la ankieta, rozwiązałem problem z zliczaniem tych samych rekordów i ich wyświetlanie.
Teraz czas na wybór tego, który ma najwięcej głosów.
Na początku próbowałem z tym:
Kod
SELECT count(*) AS ile FROM mvp WHERE mvp = '$mvp' LIMIT DESC 1

Nie przyniosło efektu, próbowałem z PHP, by pobrać z tablicy największą wartość i wyświetlić też na nic. sad.gif
Jakaś propozycja?


Z góry dzięki za pomoc. smile.gif
widmo_91
  1. SELECT count(*) AS ile FROM mvp WHERE mvp = '$mvp' ORDER BY ile DESC LIMIT 1
filipsiu
Cytat(widmo_91 @ 14.07.2013, 12:09:28 ) *
  1. SELECT count(*) AS ile FROM mvp WHERE mvp = '$mvp' ORDER BY ile DESC LIMIT 1

Widmo pomocny po raz 2 dziękuję.
Dałoby radę do tego zapytania dorobić by wyświetlało nick?
Bo tu bardziej o nick mi chodzi snitch.gif
widmo_91
  1. SELECT user, count(*) AS ile FROM mvp WHERE mvp = '$mvp' ORDER BY ile DESC LIMIT 1
filipsiu
Cytat(widmo_91 @ 14.07.2013, 12:19:12 ) *
  1. SELECT user, count(*) AS ile FROM mvp WHERE mvp = '$mvp' ORDER BY ile DESC LIMIT 1

mając 4 rekordy w bazie,
2votes - Filipsiu
1 vote - Valier
1 vote - Muertet

wyświetlając print_r widzę coś takiego: Array ( [0] => Filipsiu [user] => Filipsiu [1] => 4 [ile] => 4 )
widmo_91
  1. SELECT user, count(*) AS ile FROM mvp WHERE mvp = '$mvp' GROUP BY user ORDER BY ile DESC LIMIT 1
filipsiu
Cytat(widmo_91 @ 14.07.2013, 12:28:11 ) *
  1. SELECT user, count(*) AS ile FROM mvp WHERE mvp = '$mvp' GROUP BY user ORDER BY ile DESC LIMIT 1

teraz za każdym razem zwraca 1.
widmo_91
Ty chcesz pobierać wszystkich userów którzy głosowali na zwyciezce tak?
filipsiu
Chce wyświetlić wygranego w danym miesiącu.
Czyli powiedzmy, że baza wygląda tak:
ID | USER | voteFor | DATE | MVP
1. ktoś 123 xxx xxxx
2. andrzej 123 xxx xxxx
3. janek abc xxx xxxx

czyli ma się wyświetlić 123



id - wiadomo
user - osoba głosująca
voteFor - na kogo głosował
date - wiadomo
mvp - miesiac w ktorym ta ankieta była
widmo_91
  1. SELECT voteFor, count(*) AS ile FROM mvp WHERE mvp = '$mvp' GROUP BY voteFor ORDER BY ile DESC LIMIT 1
filipsiu
Cytat(widmo_91 @ 14.07.2013, 12:42:59 ) *
  1. SELECT voteFor, count(*) AS ile FROM mvp WHERE mvp = '$mvp' GROUP BY voteFor ORDER BY ile DESC LIMIT 1

Dziękuję, wszystko działa, jeszcze raz thx. 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.