Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Głosowanie
Forum PHP.pl > Forum > Bazy danych > MySQL
Michu
Mam w bazie danych prostą tabelę służącą do zapisywania głosów które jedni użytkownicy oddają na drugich. Tabelka ma dwie kolumny: "id" (numer użytkownika oddającego głos) i "vote" (numer użytkownika na który oddano głos). Potrzebuję dwóch zapytań sql - jedno miałoby wskazywać który z użytkowników otrzymał najwięcej głosów (w przypadku remisu zwycięża ten kto ma mniejszy numer), a drugie miałoby wyświetlać tabelkę pokazującą kto ile głosów zebrał. Czy takie zapytania w ogóle można napisać, czy też trzeba stworzyć skrypt kolejno sprawdzający każdego użytkownika (select count (*) from tabelka where vote='id_użytkownika')?

Będę wdzięczny za szybką odpowiedź
JaRoPHP
Cytat(Michu @ 9.12.2007, 17:26:55 ) *
Czy takie zapytania w ogóle można napisać
Jeżeli dobrze odczytuję Twoje zamiary, to tak - da się smile.gif.
Cytat(Michu @ 9.12.2007, 17:26:55 ) *
Potrzebuję dwóch zapytań sql
Po co? Możesz zrobić to jednym - rekord pierwszy oznacza 'zwycięzcę'...

  1. SELECT vote, COUNT(vote) AS ilosc
  2. FROM `as` GROUP BY vote
  3. ORDER BY ilosc DESC, vote ASC
Michu
tongue.gif Masz rację, przecież do tego wystarczy jedno zapytanie. Dziękuję smile.gif
envp
Do takiego awatara trzeba jeszcze troche dorosnąć winksmiley.jpg tongue.gif (żart 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.