![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 3 Dołączył: 4.08.2006 Skąd: GDA Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam dużo problem, szukałem rozwiązania na tym forum i nie mogę znaleźć. Otóż mam w tabeli pola: firma status glos ocena Chcę je wyświetlić od tych co mają największą średnią oceny i status 1 więc w polu ocena sumuję oceny wszystkie a w polu glos liczbę głosów czyli wiadomo ocena/glos daje średnią. I mam takie zapytanie długie ale jest nie poprawne, chodzi o kawałek "ocena/glos". Jak tu zrobic by było poprawne ?
Pomocy. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 21 Dołączył: 1.09.2006 Skąd: Edinburgh Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 3 Dołączył: 4.08.2006 Skąd: GDA Ostrzeżenie: (0%) ![]() ![]() |
Niestety dalej nie działa.
Cytat Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/noty/domains/xxxxxxx/public_html/firma_top.php on line 54 A oto jak to przerobiłem: SELECT SQL_CALC_FOUND_ROWS SUM(glos) AS glos_suma, SUM(ocena) AS ocena_suma, (ocena_suma/glos_suma) AS srednia, * FROM naszafirma WHERE status=1 ORDER BY srednia DESC LIMIT $start, $na_stronie Próbowałem też tak: SELECT SQL_CALC_FOUND_ROWS, SUM(glos) AS glos_suma, SUM(ocena) AS ocena_suma, (ocena_suma/glos_suma) AS srednia, * FROM naszafirma WHERE status=1 ORDER BY srednia DESC LIMIT $start, $na_stronie I nie działa :/ Ten post edytował oomaster 6.02.2008, 16:17:26 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 21 Dołączył: 1.09.2006 Skąd: Edinburgh Ostrzeżenie: (0%) ![]() ![]() |
Szczerze mowiac, nie wiem jak zachowuje sie SQL_CALC_FOUND_ROWS - przyznam szczerze, ze nie uzywalem wczesniej. Bez przerobek to co napisalem tez wywala blad?
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 3 Dołączył: 4.08.2006 Skąd: GDA Ostrzeżenie: (0%) ![]() ![]() |
Samego twojego kodu nie testowałem ponieważ nie działało by mi sortowanie na strony. Dlatego nie mogę bez funkcji SQL_CALC_FOUND_ROWS
![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 21 Dołączył: 1.09.2006 Skąd: Edinburgh Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
blad masz tutaj: , *
nie mozesz po przecinku dac *. Musi byc:
Cytat ponieważ nie działało by mi sortowanie na strony. Dlatego nie mogę bez funkcji SQL_CALC_FOUND_ROWS mellow.gif dlatego sytuacja tak sie komplikuje Aj tam. glupoty gadasz ![]() Mozesz spokojnie bez tego SQL_CALC_FOUND_ROWS zrobic sobie zapytanie. A liczbe wierszy wyliczysz zapytaniem z count(*) -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 305 Pomógł: 3 Dołączył: 4.08.2006 Skąd: GDA Ostrzeżenie: (0%) ![]() ![]() |
dzięki wam dzięki wam oświeciło mnie podziękowania dla specialplan i nospor'a
![]() Dla ciekawskich rozwiązanie: Cytat SELECT SQL_CALC_FOUND_ROWS * FROM naszafirma WHERE status=1 ORDER BY (ocena/glos) DESC LIMIT $start, $na_stronie
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 11:35 |