Web-Technik: ASP, PHP, XML, Javascript, AJAX, SQL Datenbanken. Webentwicklung: CMS, Foren, Blog -Scripte. |
|||||||
![]() |
|
|
Themen-Optionen | Thema durchsuchen |
Web-Technik: ASP, PHP, XML, Javascript, AJAX, SQL Datenbanken. Webentwicklung: CMS, Foren, Blog -Scripte. |
|||||||
![]() |
|
|
Themen-Optionen | Thema durchsuchen |
[Thema] - [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 1 |
|
Bewertung:
![]() Registriert seit: Sep 2005
Beiträge: 1.162
Power: 24
|
Hallo zusammen,
habe folgendes kleine Problem in PHP bzw. SQL und komme da gerade nicht weiter. Warscheinlicht recht simpel für euch ^^ Das ganze ist in 3 Tabellen aufgebaut und hat folgende Struktur : Tabelle tblmovies : Code:
Code:
Code:
Code:
Eine Möglichkeit wäre hier an Hand der tblmovies.ID auf die Referenztabelle zuzugreifen und zu gucken wie viel Einträge es für die tblmovies.ID gibt. Mit der Anzahl dann eine Schleife durchlaufen lassen und eine Variable dann immer mit den tblcountry.shortname füllen bzw. anhängen was ja gehen müsste da ich ja so auch Zugriff auf diese Tabelle habe. Allerdings habe ich keine Ahnung wie ich da anfangen bzw. das umsetzen soll oder ob das überhaupt so geht. Bin um jede Antwort dankbar. Greetz NS5 |
|
|
|
|
|
# 2 |
|
Bewertung:
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Registriert seit: Oct 2005
Beiträge: 2.197
Power: 29
|
PHP->Webtechnik.
~moved~ Mfg, Kolazomai ![]() KSnoop2 - FTP Pub Scanner [v0.21] Features: Multi-threaded Scan, IP-Liste als Txt, Multi-Range Option, Output summary, Settings auch als .ini-Datei, Connection- & FTP-Timeout, entwickelt fuer die Raid-Rush Community, u.v.m. |
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 3 |
|
Bewertung:
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Registriert seit: Mar 2006
Internet: DSL 6000
Beiträge: 685
Power: 21
|
du kannst doppelte einträge mittels UNION zusammenfügen... das ist eigentlich das gleiche wie GROUP BY nur halt verkürzt ^^
ob es auch bei MySQL geht must du ausprobieren ich kenne das nur vom SQL-Server 2000 ... http://sql.1keydata.com/de/sql-union.php <- kannst du dir ja mal angucken ![]() greetz Mutator http://saved.im/mji4mtmxyw5h/signatur.png (url=saved.im/mji4mtmxyw5h/signatur.png)
-=[ Flickr (url=www.flickr.com/photos/mutator/) ]=[ leer xD ]=[ Gästebuch (url=www.graphicguestbook.com/mutator) ]=- |
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 4 |
|
Bewertung:
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Registriert seit: Sep 2006
Beiträge: 1.865
Power: 26
|
select mc.* from tblmoviesincoutry as mc
join tblmovies as m on mc.tblmovies_id=m.id join tblcounty as c on mc.tblcountry_id=c.id order by m.title ? bin ich eigentlich der einzige, der die bezeichnungen (z.b. "tblcountry_id" und "tblmoviesincountry") für suboptimal hält? [img]http://img169.imageshack.us/img169/2733/cupofstfuxc5.jpg[/img] deutsch ist nicht zuviel verlangt: standard (www.k-faktor.com/standart/) - seit bei zeit, seid als verb (www.seitseid.de/)
|
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 5 |
|
Bewertung:
![]() Registriert seit: Sep 2005
Beiträge: 1.162
Power: 24
Themenstarter |
@ Mutator : Keine schlechte Idee. Das Problem ist nur dass die 2 Ausgaben nach der SQL Anweisung ja nicht komplett identisch sind. Wie handhabt er dass denn dann mit dem ShortName Feld. Kannst du mal ein Beispiel posten wie du das dir gedacht hast ?
|
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 6 |
|
Bewertung:
![]() Registriert seit: Sep 2005
Beiträge: 1.162
Power: 24
Themenstarter |
Hier nochmal kurz was um das Problem etwas zu veranschaulichen.
Die Datenbank - bzw. Tabellenstruktur steht ja oben. Auf diese wird dann folgender SQL Befehl angewendeT : ![]() Die Ausgabe sind einfach alle Einträge der tblmovies inkl. derer aus der tblcountry auf die durch die tblmoviesincountry referenziert wurde. Wichtig ist hier allerdings nur die beiden ID Spalten : ![]() Der Film 5 hat somit 2 Country Einträge. Wenn ich nun das komplette Ergebnis der Abfrage über eine Schleife ausgeben lasse, listet er mir natürlich den kompletten Film 2 mal auf. Einmal für und mit der Country ID 2 und einmal die 3. Das will ich aber nicht. Ich möchte einen Eintrag für den Film 5 haben, allerdings dann direkt mit beiden Country IDs also es sollte dann quasi folgendes da stehen : Country 1 / Country 2 und nicht 2 komplett neue Einträge für den Film. Über folgenden Befehl kann ich mir die Movie IDs inkl. der Anzahl angeben wie oft für den Film ein Countryeintrag vorhanden ist : ![]() ![]() Und da steh ich momoentan auf dem Schlauch. Wie kann ich das Ergebnis am besten auswerken so dass ich keine 2 Einträge vorfinde, sondern 1 Eintrag mit den 2 Daten wie oben beschrieben. Besten Dank im Vorraus. |
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 7 |
|
Bewertung:
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Registriert seit: Sep 2006
Beiträge: 1.865
Power: 26
|
schau dir mal GROUP_CONCAT an, vielleicht bringt dich das weiter. damit kannst du mehrere spalten zu einer einzigen verketten.
[img]http://img169.imageshack.us/img169/2733/cupofstfuxc5.jpg[/img] deutsch ist nicht zuviel verlangt: standard (www.k-faktor.com/standart/) - seit bei zeit, seid als verb (www.seitseid.de/)
|
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 8 |
|
Bewertung:
![]() Registriert seit: Sep 2005
Beiträge: 1.162
Power: 24
Themenstarter |
Genial. Genau das hab ich gesucht. Das bringt mich schon um einiges weiter ^^ Hab schon gedacht dass es irgendwas zum GROUP BY geben muss um die Strings aneinander zu klatschen, hab aber nix gefunden.
Wenn ich jetzt folgenden Befehl under phpMyAdmin eingebe bekomme ich auch schön den Film mit der ID 5 angezeigt und in der 2. Spalte steht dann Country 1 / Country 2. Code:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ... line 99 ... in welcher folgends steht ... $anz = mysql_num_rows ($sqlerg); Ne Ahnung an was das liegen kann ? Kann es sein dass der mit der Syntax diese Group_Concat aus welchen Gründen nicht klar kommt und das irgendwie verhunzt ? Bin hier gerade mal auf die Suche genangen. BW ist dir aber schonmal sicher. Besten Dank. |
|
|
|
AW: [PHP & SQL] 2 Datensätze nur 1 x ausgeben |
|
|
# 9 |
|
Bewertung:
![]() Registriert seit: Sep 2005
Beiträge: 1.162
Power: 24
Themenstarter |
Hat sich erledigt.
Hab das Problem gefunden. Mal bis morgen warten ob sich noch was ergibt, sonst kann er zu gemacht werden. Nochmal Thx. |
|
|
|
![]() |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [SQL] - Bestimmte Werte ausgeben | flawlessT | Schule, Studium, Ausbildung | 2 | 22.01.2012 16:52 |
| [SQL] & [PHP] Pro neue ID eine neue Seite erstellen | naitsgang | Webentwicklung | 11 | 19.12.2011 23:12 |
| [PHP] - Javascript per Php ausgeben | live | Webentwicklung | 7 | 08.02.2011 11:42 |
| [PHP / SQL] Tabelleninhalte sortiert ausgeben | 010100111001 | Webentwicklung | 3 | 29.05.2008 13:41 |
| Letzte ID (SQL Tabelle) als Int Wert ausgeben lassen | Hennington | Webentwicklung | 4 | 11.08.2006 15:03 |
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:12 Uhr. |