![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 25.03.2010 Skąd: Radom Ostrzeżenie: (10%)
|
Witam,
Takim zapytaniem
Dostaje coś takigo (IMG:http://i.imgur.com/2mL6M.jpg) Co oczywiście jest nieprawdą, gdyż przy użyciu takiego zapytania
zwraca mi: (IMG:http://i.imgur.com/ENHzq.jpg) A tak wygląda tabela "graf": (IMG:http://i.imgur.com/Ok9We.jpg) --------------------------------------- 1. Ktoś mi może wytłumaczyć dlaczego porównanie z pierwszej opcji nie wyciąga prawidłowych danych? 2. Jak zatem powinno brzmieć zapytanie, aby dla każdego użytkownika pobrać wpis gdzie id_graf jest największe? Ten post edytował qweluke 20.09.2011, 12:44:14 |
|
|
|
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Ale ty tak na poważnie? Porównujesz id_graf do tekstu 'maksik' ale w twoich zrzutach widać jak wół że id_graf jest liczbą :/
edit: 'maksik' a alias maksik z max to dwie różne rzeczy. Jak chcesz używać porównywać funkcje grupujące w group by to masz to robić w HAVING i masz używać funkcji a nie żadnych tekstów maksik |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 25.03.2010 Skąd: Radom Ostrzeżenie: (10%)
|
Ale ty tak na poważnie? Porównujesz id_graf do tekstu 'maksik' ale w twoich zrzutach widać jak wół że id_graf jest liczbą :/ edit: 'maksik' a alias maksik z max to dwie różne rzeczy. Jak chcesz używać porównywać funkcje grupujące w group by to masz to robić w HAVING i masz używać funkcji a nie żadnych tekstów maksik No bez przesady (IMG:style_emoticons/default/biggrin.gif) Aż taki głupi to nie jestem ;P
'maksik' to alias dla 'MAX( graf.id_graf )' ktory jest liczba (IMG:style_emoticons/default/tongue.gif) moze niepotrzebnei uzylem '' w porownaniu a nawet jeśli wpisze
to tez nie działa (IMG:style_emoticons/default/sad.gif) Zaraz potestuję HAVING Ten post edytował qweluke 20.09.2011, 09:47:48 |
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Cytat Aż taki głupi to nie jestem Cytat 'maksik' to alias dla 'MAX( graf.id_graf )' ktory jest liczba (IMG:style_emoticons/default/tongue.gif) Mamy tu dwie sprzeczne informacje (IMG:style_emoticons/default/tongue.gif) (IMG:style_emoticons/default/wink.gif) 'maksik' to tekst. Tekst to nie alias. Alias to maksik. 'maksik' to tekst 'maksik' maksik Znajdź 10 różnic. Cytat a nawet jeśli wpisze Dlatego wspomniałem o having. Możesz też pobawić się podzapytaniem, gdzie będziesz porównywał id_graf do max z podzapytania
.... to tez nie działa |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 25.03.2010 Skąd: Radom Ostrzeżenie: (10%)
|
a moge was prosic o jakas podpowiedz jak takie pytanei zadać?
Bo męczę się z tym HAVING ale za każdym razem zwraca mi tylko jeden rekord a nie dla wszystkich id_uzytkownika probowalem tez podzapytan
ale dostaje informacje, ze
co oczywiście jest prawdą gdyż podzapytanie zwraca wszytkie MAX'y (dla każdego użytkownika) Ten post edytował qweluke 20.09.2011, 12:08:34 |
|
|
|
Post
#6
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Cytat co oczywiście jest prawdą gdyż podzapytanie zwraca wszytkie MAX'y (dla każdego użytkownika) Bo podzapytanie masz ograniczyć do aktualnie przetwarzanego użytkownika..... AND id_graf = (SELECT MAX( id_graf) FROM graf WHERE id_uzytkownika=uzytkownicy.id) .... |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 25.03.2010 Skąd: Radom Ostrzeżenie: (10%)
|
z tym ze wtedy zwraca mi tylko jeden rekord dla id_uzytkownika = 1, a jeszcze jest pozostałuch 5ciu (IMG:style_emoticons/default/sad.gif)
|
|
|
|
Post
#8
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
No tak.... coś mi się przestawiło we łbie. (IMG:style_emoticons/default/sad.gif)
Powód edycji: [nospor]:
|
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 153 Pomógł: 41 Dołączył: 28.06.2011 Skąd: Częstochowa Ostrzeżenie: (0%)
|
jezeli robisz MAX to dostaniesz tylko jeden rekord.
A jesli nie chcesz pobierac maxymalnego id, tylko kilka to musisz napisac no i nie ma sensu w podzapytaniu robic grupowania (IMG:style_emoticons/default/wink.gif) |
|
|
|
Post
#10
|
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 0 Dołączył: 25.03.2010 Skąd: Radom Ostrzeżenie: (10%)
|
o! tego mi było trzeba (IMG:style_emoticons/default/biggrin.gif)
teraz śmiga jak ta lala (IMG:style_emoticons/default/biggrin.gif) to jeszcze jedno pytanie
To zapytanie zwraca tylko uzytkownikow ktorzy maja najwieksze id_graf. Musiałem je troche zedytowac i wyglada teraz tak
I w takim przypadku zwroci mi tylko uzytkownikow, ktorzy maja wpisana jakas wartosc id_graf. Jak zmodyfikowac zapytanie aby wyswietlic wszystkich uzytkownikow ktorzy maja max(id_graf) oraz tych ktorzy nie maja wpisanej zadnej wartosci? Probowalem INNER JOIN'em ale nie wyswietla mi tych "pustych" uzytkownikow :/
Wstawilem OR zamiast AND, teraz wysweitla mi wszystkich uzytkownikow z IDmax oraz pozostalych z pierwszym lepszym ID. Także jeżeli nie wpadne na inny pomysl to zabezpiecze to przez PHP zeby sprawdzal czy aktualne ID jest MAX i w przeciwnym wypadku wyswietlal stosowne informacje. Chyba ze mi podpowiecie jak uzyskac informacje z MySQL z wszystkimi danymi a dla uzytkownikow ktorzy nie maja w danym miesiacu MAX(id) wyswietlalo NULL lub pusta komorke? |
|
|
|
![]() ![]() |
|
Aktualny czas: 22.12.2025 - 17:32 |