![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 500 Pomógł: 1 Dołączył: 29.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, chcę pobrać wszystkie dane z tabeli z użytkownikami i chciałbym aby do tych danych dołączyła suma rekordów z innej tabeli w których pole user_id jest równe id danego użytkownika.
Próbowałem coś w tym stylu
jednak to zapytanie nie zwraca mi wszystkich rekordów. Jak mogę to poprawić? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Troche mi sie zapomnialo o temacie, ale juz jestem ponownie (IMG:style_emoticons/default/smile.gif)
Dodajesz teraz dodatkowe warunki, by Twoje posty sie zgadzaly. Domyslnie jednak MYSQL nie jest w trybie ANSI, nie spotkalem jeszcze hostingu, ktory by tak ustawial, wiec nie czaruj mnie prosze (IMG:style_emoticons/default/smile.gif) Zas wracajac do Twojego zapytania: czy nie jest ono przypadkiem niemilosiernie nieoptymalne? Czy przypadkiem podzapytanie z left join nie wykonuje sie na nowo dla kazdego rekordu z tabeli users? Mam akurat lokalnie bazke z duzą liczbą rekordow. Wykonalem moje zapytanie - ulamek sekundy. Wykonalem Twoje zapytanie - pierwsze odpalenie ponad 8 minut. Kolejne odpalenia juz szybciej Nie zrozum mnie zle. Nie chodzi mi o zadną wojnę tylko o wyjasnienie sprawy, bo bardzo mnie to interesuje. Może w trybie ANSI to zapytanie wykonywane jest inaczej/szybciej niz na standardowych ustawieniach mysql? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 12:16 |