![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.09.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam następujacy problem.
Mam dwie tabele - uzytkownicy (w której przechowywane jest id, nazwa oraz kontrolka czy użytkownik może dostawać pochwały i nagany) oraz wyniki (w której przechowywane są id użytkownika oraz kontrolki - czy użytkownik otrzymał pochwałę czy naganę). Każda informacja o każdej pochwale lub naganie znajduje się w osobnym rekordzie. tabela uzytkownicy user_id, nazwa, uwzgledniaj 1, user1, 1 2, user2, 0 3, user3, 1 4, user4, 1 tabela wyniki user_id, pochwala, nagana 1, 1, 0 1, 0, 1 1, 1, 0 4, 1, 0 3, 0, 1 4, 0, 1 Na podstawie tych dwóch tabel chciałbym otrzymać coś takiego: user1: 2 user4: 0 user3: -1 Czyli zliczyć różnicę pochwał i nagan każdego użytkownika (który może pochwały i nagany otrzymywać) i posortować użytkowników wg tych danych malejąco. Niestety nie wiem jak to zrobić. Proszę o pomoc. Pozdrawiam, Robert Zetakowski |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 12.09.2013 Ostrzeżenie: (0%) ![]() ![]() |
Czy na pewno LEFT JOIN to odpowiednie złączenie dla tego zapytania?
Jest możliwe wykonanie tego wszystkiego w jednym zapytaniu MySQL? |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Czy na pewno LEFT JOIN to odpowiednie złączenie dla tego zapytania? Tak. Zwykły JOIN pominąłby użytkowników bez pochwał/nagan. Jest możliwe wykonanie tego wszystkiego w jednym zapytaniu MySQL? Tak. Kluczowe zagadnienia podał Ci ~nospor. Od siebie dodam, że sumować musisz SUM(pochwala - nagana). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 23:53 |