![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 1 Dołączył: 13.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Chciałem pobrać wyniki uszeregowane rand, maxymalny i minimalny wyknik zapytaniem: Kod query("SELECT tag_name, tag_amount, MIN(tag_amount), MAX(tag_amount) FROM `mybb_stcp` WHERE tag_name != '' GROUP BY RAND() LIMIT ".$amount) Dokładniej: Skrypt pobiera 10 rekordów, w tych 10 szuka największego i pokazuje go (muszę od razu [po pierwszej petli] mieć największy wynik). I nie wykonuje sie poprawnie - dlaczego ? Ten post edytował Watt 25.03.2010, 16:07:37 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 580 Pomógł: 85 Dołączył: 25.03.2010 Skąd: Skrzyszów :) Ostrzeżenie: (0%) ![]() ![]() |
@mortus - dzięki, faktycznie podałem rozwiązdanie z błędem składniowym
Ale to zapytanie i ten kawałek php które podałem kilka postów wyżej powinny załatwić sprawę |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
I tu znowu błąd
@mortus - dzięki, faktycznie podałem rozwiązdanie z błędem składniowym Jeśli już, to powinno być:Ale to zapytanie i ten kawałek php które podałem kilka postów wyżej powinny załatwić sprawę Ale takie zapytanie nie załatwia problemu, ponieważ nie można sortować po konkretnych wartościach i jednocześnie losowo. W takim zapytaniu uwzględniane jest tylko sortowanie po wartościach w kolumnie tag_amount, a co za tym idzie zawsze dostaniemy dziesięć tych samych rekordów. EDIT: Ogólnie skłaniałbym się ku takiemu rozwiązaniu Teoretycznie zapytanie wygląda dobrze, niestety nie jest prawidłowe i pojawia się błąd, który mówi, że tabela wylosowane nie istnieje, czyli źródło nie jest zapisywane jako alias. Poszperałem, poszukałem i niestety bug ten był zgłoszony, ale do tej pory nikt go nie poprawił. W związku z tym obawiam się, że samym zapytaniem SQL nie zrobisz dokładnie tego, co chcesz i trzeba będzie wynik przetworzyć w PHP. W związku z tym polecam i skrypt
Ten post edytował mortus 27.03.2010, 12:43:30 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 19:24 |