Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL]Problem z zapytaniem złożonym, Wyświetlenie danych pobranych z 4 tabel
grzesiek25
post 23.05.2019, 10:15:08
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 23.02.2008

Ostrzeżenie: (0%)
-----


Witajcie

Mam problem z naprawą i rozbudową tego zapytania

  1. SELECT
  2. przedmiot.wlasciciel_id,
  3. przedmiot.id_przedmiotu,
  4. przedmiot.dane0,
  5. przedmiot.dane1,
  6. gracz.gracz_id,
  7. gracz.nick,
  8. przedmiot.atrybut_0,
  9. przedmiot.atrybut_1,
  10. przedmiot.atrybut_2,
  11. przedmioty.id_przedmiotu,
  12. przedmioty.nazwa_przedmiotu,
  13. bonus.id,
  14. bonus.nazwa,
  15. przedmiot.atrybut_wartosc0,
  16. przedmiot.atrybut_wartosc1,
  17. przedmiot.atrybut_wartosc2
  18. FROM
  19. przedmiot
  20. INNER JOIN
  21. gracz
  22. ON przedmiot.wlasciciel_id = gracz.gracz_id
  23. INNER JOIN
  24. przedmioty
  25. ON przedmiot.id_przedmiotu = przedmioty.id_przedmiotu
  26. INNER JOIN
  27. bonus
  28. ON bonus.id = przedmiot.atrybut_0"


Wiecie może jak pokazać dodatkowo dane z przedmiot.atrybut_wartosc1 (wartość jest aktualizowana przez inne zapytanie zewnętrzne), przedmiot.atrybut_wartosc2 (wartość jest aktualizowana przez inne zapytanie zewnętrzne) a do tego przedmiot.dane0, przedmiot.dane1 ma się połączyć z tabelą przedmioty (przedmioty.id_przedmiotu) i pobrać nazwę przedmiotu z "przedmioty.nazwa_przedmiotu" ?
Dodam również że przedmiot.atrybut_0, przedmiot.atrybut_1, przedmiot.atrybut_2 pobiera dane z tabeli bonus (bonus.id).

Jak coś jest niejasne to piszcie tongue.gif

Ten post edytował grzesiek25 23.05.2019, 10:22:18
Go to the top of the page
+Quote Post
Pyton_000
post 23.05.2019, 14:05:16
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Musisz dopisać kolejne left join dla każdego przedniotu
Go to the top of the page
+Quote Post
grzesiek25
post 23.05.2019, 22:40:39
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 23.02.2008

Ostrzeżenie: (0%)
-----


Cytat(Pyton_000 @ 23.05.2019, 15:05:16 ) *
Musisz dopisać kolejne left join dla każdego przedniotu



Niestety, jak bym nie próbował zawsze ten sam błąd przy rozbudowie

: Syntax error or access violation: 1066 Not unique table/alias: 'przedmioty'

Możesz dodać to do mojego kodu lub pokazać jakiś przykład ?
Go to the top of the page
+Quote Post
Pyton_000
post 24.05.2019, 06:41:13
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Masz błąd bo nie nadajesz aliasów na tabele. Powinno być tak:
Kod
    INNER JOIN
        przedmioty p1
            ON przedmiot.id_przedmiotu = p1.id_przedmiotu


Tu masz ładnie: http://www.mysqltutorial.org/mysql-alias/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 00:11