![]() |
![]() |
![]()
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:
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 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 1 Dołączył: 27.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Cytat 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 Ten post edytował Unik2psc 17.08.2009, 16:56:02 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Wiec w takim razie 2 opcja.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 1 Dołączył: 27.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wiec w takim razie 2 opcja. odpada, w tym momencie sciagnie mi level z jednego rekordu. A potrzebuje level wszystkich rekordow postaci ktore nalezy do gildi X. A wolalbym to za pomoca jednego zapytania all zrobic. Przepraszam za moj tepy blad: Wszystko bylo okej - ale nie mnialo byc ROUND() a SUM(). Typ zapytania: Kod $sql_var = "SELECT g.guildid, g.name, g.leaderguid, c.name, c.race, (SELECT COUNT(*) FROM guild_member WHERE guildid=g.guildid), (SELECT SUM(level) FROM characters WHERE guid IN(SELECT guid FROM guild_member WHERE guildid=g.guildid)) FROM guild g LEFT JOIN characters c ON(c.guid=g.leaderguid) WHERE ".$sql_temp." LIMIT 50";
Ten post edytował Unik2psc 17.08.2009, 18:11:26 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 15:42 |