Skocz do zawartości

Działania matematyczne przed pobraniem danych


lamer22

Rekomendowane odpowiedzi

witam,

jak stanąłem tak nie mogę ruszyć z tematem, mam taki oto problem.

Jest tabela o nazwie: ratings

Trzy kolumny: id, rating_id, rating_num

Jest to tabela gdzie zapisuje oceny(rating_num) uzytkownikow danych obiektów(rating_id) z mojej strony internetowej.

Do tej pory wyciagalem 3 najlepsze obiekty liczac po prostu srednia i to zapytanie wyglada tak:

Kod

SELECT avg(rating_num) as srednia,rating_id as id FROM `ratings` GROUP BY `rating_id` ORDER BY srednia DESC LIMIT 3

z czasem jednak się okazało, że takie podejście jest mylące, bo np. jeden obiekt, który miał 1 opinię na 5 był wyżej niż obiekt, który miał np. 100 opinii i srednia 4,8.

Postanowiłem więc zmodyfikować sposób wyliczania najlepszego obiektu zgodnie z takim wzorem:

Średnia suma ocen + (liczba ocen / 2)

Czy jest możliwość, aby pobrać tak posortowane dane z tabeli, aby nie przetwarzać ich w php, bo nie powiem jest trochę tych obiektów?

To nie prawda, że przeprowadzki bywają ciężkie i męczące.

Odnośnik do komentarza
Udostępnij na innych stronach

NP:

SELECT U.`idz`, (U.`zdjecie_suma_ocen` / U.`zdjecie_oceniano_razy`) AS ocena
FROM UserZdjecia U
WHERE U.`zdjecie_oceniano_razy` > 10 ORDER BY ocena DESC LIMIT 100;

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności