![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
mam problem z zapytaniem :/ wiem ze jest bardzo duzo podobnych tematow i probowalem z nich cos wyciagnac ale niestety nie umiem i w ostatecznosci zwracam sie do Was... a mianowicie mam takie zapytanie:
ogolnie chodzi mi o to zeby sortowanie bylo przed grupowaniem ale niestety w tym moim zapytaniu to nie dziala (IMG:style_emoticons/default/baaasmiley.gif) nic nie dziala wywala blad zapytania... prosze o pomoc naprawde glowie sie z tym juz jakis czas probowalem wiele sposobow i niestety nie umiem sobie z tym poradzic... ----- przy okazji jakby ktos mial chwilke i ochote to niech zerknie na ten temat http://forum.php.pl/index.php?showtopic=169134 bo niestety z tym tez sobie jeszcze nie poraddzilem :/ z gory dzieki wszystkim ktorzy przynajmniej sprobowali pomoc |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 12 Dołączył: 31.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
W twoim zapytaniu masz dwa błędy:
Aby zrobić sortowanie przed grrupowaniem będziesz musiał skorzystać z tabeli pomocniczej. Mając tabelę:
z danymi:
Tworzysz sobie tabelę pomocniczą z kolejnością sortowania:
i wrzucasz do niej dane z twojego zapytania:
W zapytaniu głównym pobierasz już interesujące cię dane z sortowaniem wg. id tabeli pomocniczej:
Nie wiem czy dokładnie o takie cos ci chodziło - jeżeli nie to może przynajmniej przybliży cię do celu (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
kurde super dzięki bardzo za pomoc myślę że jestem dzięki Tobie o krok od rozwiązania... niby wszystko robi jak należy lecz nie wiem dlaczego nie wyświetla mi jednej pozycji konkretnie probowalem robic to przez k.sinc w.sinclair i samo sinclair i nie wyswietla mi tego a wszytsko inne jest ok :/ nie wiesz dlaczego tak sie dzieje jakim prefiksem wywolac te konkretna kolumne?
aha i ta kolumna u mnie ma wartosc decimal 10,2 ale to chyba nie ma znaczenia bo sprawdzalem na varchar 20 tak jak zalecales ale to nic nie zmienia... ponizej moj kod wywolania petli:
teraz jeszcze male pytanko bo nie wiem czy sie w ogole brac za to... mianowice ze da rade zaautomatyzowac to tak aby po dodaniu rekordow do tabeli wyniki automatycznie kasowaly sie stare rekordy z tabeli kolejnosc i wstawialy nowe juz z nowym rekordem wstawionym do tabeli wyniki? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 12 Dołączył: 31.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Czyszczenie / kasowanie tabeli kolejnosc możesz zrobić na trigerze przy dodawaniu nowej wartości do tabeli wyniki.
Co do niewyświetlania się wartości z kolumny k.sinc czy w.sinclair: w zapytaniu nie masz ujętej tej kolumny, więc do główengo selecta musisz jądodać:
Wtedy powinny ci wyjść wartości. Typ kolumny w zasadzie nie ma znaczenia, chodzi przecież o sortowanie. Pozdrawiam. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
niestety nie zwraca tak najwiekszego rekordu z powtarzalnego idzaw tylko najmniejszy (IMG:style_emoticons/default/sad.gif)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Najpierw wykonywane jest grupowanie, potem sortowanie, dlatego sortować można dopiero wyniki już pogrupowane (IMG:style_emoticons/default/smile.gif)
Problem ten jest widoczny, kiedy chcemy przy ID artykułu wyświetlić np. ostatni komentarz. Rozwiązań jest parę (zależnie od sytuacji):
Zazwyczaj używa się podzapytań (w części from, join a nawet where) lub joinuje tą samą tabelę, by wyświetlić błąd użyj: |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 2.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
dzieki za zainteresowanie sie moim tematem ale ono nie zwraca zadnych rekordow
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 08:50 |