![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Mam kolejny kłopot.
Powiedzcie mi dlaczego to nie chce mi zadziałać tak jak powinno. Mam kod
Kod powinien oddać najwyższą wartość w polu wiatrsr z danego przedziału zawartego pomiędzy $start a $koniec ale zwraca tylko pierwszą wartość z bazy i nie jest to najwyższa z danego okresu - dlaczego? Takie zapytanie działa prawidłowo
Ale potrzebne mi to w pierwszym kodzie. Sory kod działa ale pokazuje inny błąd. Obecnie najwyższa wartość pobierana w tym przedziale czasowym z bazy danych to wiatrsr = 77 Natomiast sila_wiatru przy 77 daje kolor czerwony a wyświetla z (powinno być czerwony) sila_wiatru pobierana jest jako pierwsza z tego przedziału a nie jak powinno być maksymalna. Jak to naprawić? Ten post edytował brzanek 20.11.2018, 22:38:00 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 807 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Nie będzie działać, bo to, że dałeś alias dla sumy o nazwie kolumny, to nie znaczy, że zostanie podstawiony do klauzuli WHERE.
Poczytaj trochę o SQL - szczególnie jak działają funkcje grupujące w połączeniu z WHERE. Bardzo prawdopodobne, że sumę musisz nałożyć na dodatkowe zapytanie, którego podzapytaniem będzie to z WHERE i zakresami, ale nie wiem, bo nie mam kompletnie pojęcia co chcesz uzyskać. Na pewno czytelność ułatwiłoby trafne dobieranie aliasów dla tabel, np. dla kierunek_wiatru - kw, a nie zt. O aliasach też poczytaj, bo to nie magia, którą musisz przepisywać bezmyślnie z przykładu. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 22:16 |