[MySQL]Złączenie tabel |
[MySQL]Złączenie tabel |
24.02.2019, 17:38:48
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 24.11.2015 Ostrzeżenie: (0%) |
Witam ponownie
Mam problem ze złączeniem tabel. Posiadam tabele w bazie: `users` i `ranks`. W `users` są kolumny: `id`, `rank_id`, `1`, `2`, `3`, ... , `8` w `ranks` są kolumny: `id`, `name`, `wymaganie1_id`, `wymaganie2_id`, `wymaganie1_value`, `wymaganie2_value` i `poziom` Przeznaczenie kolumn: USERS *rank_id - ID rangi z `ranks` którą posiada użytkownik *1, 2 ,3, ... , 8 - są to ID statystyk RANKS *ID - wiadomo *wymaganie1_id i wymaganie2_id - ID statystyki, która jest wymagana dla konkretnej rangi *wymaganie1_value i wymaganie2_value - ilość danej statystyki, którą trzeba osiągnąć by spełnić wymagania *poziom - poziom rangi (o tym niżej) Jest kilka rang: 1 | Początkujący | 7 | 8 | 10 | 50 | 1 2 | Amator | 7 | 8 | 20 | 100 | 2 3 | Zaawansowany | 5 | 6 | 30 | 100 | 3 4 | Spec1 | 5 | 6 | 50 | 120 | 4 5 | Spec2 | 5 | 6 | 50 | 120 | 4 Przykładowo: Z rangi Początkujący można awansować do Amator, z Amator do Zaawansowany, a z Zaawansowany są dwie drogi: do Spec1 i Spec2 - dlatego stworzyłem kolumnę `poziom` by było wiadomo jakie rangi są następne w stosunku do aktualnej. Teraz moje pytanie: Jak stworzyć zapytanie do bazy by pobrać interesujące mnie dane: czyli chcąc awansować na Spec1 muszę sprawdzić jakie dwie statystyki są wymagane, pobrać wymaganą wartość z `ranks` i pobrać z `users` wartości z kolumn odpowiadających id statystyk - żeby później je porównać w IF i zezwolić / niezezwolić na awans. Da się to załatwić jednym zapytaniem z JOIN? |
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 07:25 |