Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MySQL + LEFT JOIN, error pola
Unik2psc
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 1
Dołączył: 27.07.2009

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


Witam, mam do Was pytanie a raczej o naprowadzenie do punktu wyjscia.
Mam takie zapytanie:
  1. $sql_var = "SELECT g.guildid, g.name, g.leaderguid, c.name, c.race, (SELECT COUNT(*) FROM guild_member WHERE guildid=g.guildid) FROM guild g LEFT JOIN characters c ON(c.guid=g.leaderguid) WHERE ".$sql_temp." LIMIT 50";

Tutaj wszystko dziala OK. Ale jesli chce je rozszerzyc o round(level).
Kod
$sql_var = "SELECT g.guildid, g.name, g.leaderguid, c.name, c.race, (SELECT COUNT(*) FROM guild_member WHERE guildid=g.guildid), (SELECT round(level) FROM characters gc LEFT JOIN guild_member gm ON(gm.guildid=g.guildid) WHERE gc.guid=gm.guid) FROM guild g LEFT JOIN characters c ON(c.guid=g.leaderguid) WHERE ".$sql_temp." LIMIT 50";
To wyskakuje mi error ze nie znane pole g.guildid.


Jakies pomysly ? - z góry dziekuje za naprowadzenie.

Odrazu mowie ze podzapytanie typu:
Kod
[b](SELECT round(level) FROM characters WHERE guid=(SELECT guid FROM guild_member WHERE guildid=g.guildid))[/b]

odpada bo :
Kod
Warning: mysql_query() [function.mysql-query]: Unable to save result set in C:\Program Files\WebServ\httpd\jarmory\libary\sql.class.php on line 55
Error: Subquery returns more than 1 row


poniewaz mam cachowanie zapytan SQL ktore nie obsluzy tablicy dwu wymiarowej. Dlatego ten blad dla podzapytania.

Ten post edytował Unik2psc 17.08.2009, 16:19:33
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.09.2025 - 20:39