![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam taki maly problem z zapytaniem mysql. chodzi o to że nie wiem jak zadać pytanie.
1|a|uzytkownik 2|a|uzytkownik2 3|a|uzytkownik3 4|b|uzytkownik4 5|a|uzytkownik5 6|b|uzytkownik6 tak wyglada mniejwiecej moja tabelka, i teraz chciałbym sprawdzić jakie jest najmniejsze ID dla każdego z tematów, żeby zobaczyć który użytkownik go zapoczątkował. Zacząłem w ten sposób no wlasnie i chyba tu nie moge tego tak zostawić dlatego że on mi wybierze najmniejsze ID z całej tabeli a ja chce najmniejsze ID z a i z b, czyli po zapytaniu powinno wyświetlić a uzytkownik b uzytkownik4 Proszę o pomoc bo nie mam juz pojęcia jak to zrobić. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
kolumna_1|kolumna_2|kolumna_3 1|a|uzytkownik 2|a|uzytkownik2 3|a|uzytkownik3 4|b|uzytkownik4 5|a|uzytkownik5 6|b|uzytkownik6
tak z palca, ale powinno dzialac, jak nie to dokladnie, to juz wiesz jak kombinowac ![]() -------------------- scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
no wlasnie najgorsze jest to cos tam, bo cos tam = min(id), ale to min(id) powinno być przy każdym kolumna_2 ,a nie na całą tabelę.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 656 Pomógł: 3 Dołączył: 26.10.2005 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
może spróbuj użyć GROUP BY
-------------------- zmoderowano - waga i rozmiar
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
przeciez on grupuje bo wybraniu rekordu, wydaje mi się ze tu nie wystarczy jedno zapytanie.
najpierw musze wybrac wszystkie tematy więc wyświetli mi $zmienna= a i $zmienna=b, a pozniej select min(id) where temat=$zmienna i teraz mam min id z a i min id z b i moge znaleźć kto je dodał dobazy:) |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Neo... On NIE grupuje! Widziałeś w zapytaniu GROUP BY?Poradzili Ci grupowanie i bardzo dobrze zrobili. Zrób grupowanie po kolumna_2 i wyświetl sobie co Ci pokaże. Grupowanie ma taką specyficzną własność, że wyświetli dla wystąpienia pierwszy rekord tabeli jaki z nim się wiąże patrząc od początku. Jeśli chciałbyś ostatni - byłby mały problem, bo musiałbyś posortować wpierw tabelę zanim ją do grupowania posłałbyś, ale tak to nie problem:
Problem jest gdybyś miał w tabeli te dane chaotyczne i pierwsze wystąpienie nie byłoby pierwszym postem. Wtedy w części FROM musiałbyś posłać odpowiednio posortowaną tabelę wpierw, ale o tym wspomniałem przy okazji grupowana właśnie dla ostatniego postu w temacie. -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
ale ja nie chce wyswietlac pierwszego tematu tylko policzyc ile tematów dodal uzytkownik.
group by dziala tak ze sprawdza mi ile jest wpisow gdzie dodal uzytkownik, i ok zgadzam sie z tym ze wyswietlił by mi tylko pierwszy, ale num_rows i tak liczy pozostałe. Ok zrobiłem tak że wybrałem wszystkie tematy, zgrupowałem je i ze zgrupowanych wybrałem takie które dodal uzytkownik, więc na przykladzie po zgrupowaniu zostają nam 2 tematy 1a 2b teraz sprawdzam czy uzytkownik ktory dodal to aktualnie zalogowany uzytkownik i zliczam liczbę zwróceń true:) Dzięki. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 12:49 |