Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Problem z zapytaniem
Ulysess
post
Post #1





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


dobry wieczór. mam pewien problem a dokładniej..
chciałbym pobrać z danej tabeli date,id_a oraz id_b i na podstawie id_a oraz id_b z innej tabeli pobrać nicki tych id. Gdybym miał tylko id to potrafie pobrać po przez left join nick tego usera ale jak mam 2 id to juz nie a następnie wyświetlić pobrane rekordy. Jak mniej więcej miało by to wyglądać questionmark.gif z góry dzieki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
bastard13
post
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


  1. SELECT a.date,a.id_a,a.id_b,b.nick,c.nick FROM tab AS a LEFT JOIN tab2 AS b ON a.id_a=b.id LEFT JOIN tab2 AS c ON a.id_b=c.id

Powinno zadziałać. Musisz odwołać się do tej samej tablicy dwa razy, więc zrób sobie aliasy.


--------------------
Go to the top of the page
+Quote Post
Ulysess
post
Post #3





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


hmm albo źle coś napisałeś albo ja coś źle zrobiłem..
zapytanie wyglada następujaco:

  1. a.`result`,a.`date`,a.`attacker`,a.`defender`,b.`nick`,c.`nick` FROM `pvp` AS a LEFT JOIN `char` b ON a.`attacker` = b.`id_char` LEFT JOIN `char` AS c ON a.`defender` = c.`id_char` ORDER BY `date` DESC LIMIT 30


z tabeli pvp ma pobrac date , atakujacego broniacego i na podstawie atakujacego i broniacego ma ich nicki wyciagnac z tabeli char
Go to the top of the page
+Quote Post
bastard13
post
Post #4





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


  1. LEFT JOIN `char` b

a powinno być:
  1. LEFT JOIN `char` AS b


--------------------
Go to the top of the page
+Quote Post
Ulysess
post
Post #5





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


hmm teraz jest
  1. SELECT a.`result`,a.`date`,a.`attacker`,a.`defender`,b.`nick`,c.`nick` FROM `pvp` AS a LEFT JOIN `char` AS b ON a.`attacker` = b.`id_char` LEFT JOIN `char` AS c ON a.`defender` = c.`id_char` ORDER BY `date` DESC LIMIT 30

i dalej nic.. :/

hmm na hostingu działa.. możliwe że to wina ver mysql bo na innej podstronce gdzie uzywam left joina wyskakuje 'Can't find file: 'c' (errno: 2)' wielkie dzieki smile.gif
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 Aktualny czas: 19.08.2025 - 07:46