Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Antwort
 
Themen-Optionen
Alt 10.01.2007, 21:23   Nach oben    #1
ljungi
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard JOIN-Frage

Hallo,

ich hab folgenden Query:

PHP-Code:
        $wahlenrow $db->query("SELECT game_wahlen.*, game_wahlkandidaten.userid AS kandidaten, game_wahlsieger.userid AS wahlsieger 
                                        
                                        FROM 
                                             game_wahlsieger, game_wahlen
                                        
                                        INNER JOIN
                                            game_wahlkandidaten
                                        ON
                                            game_wahlkandidaten.wahlid = game_wahlen.id
                                        WHERE    
                                            game_wahlen.id = game_wahlsieger.wahlid
                                        ORDER BY 
                                            game_wahlen.regionid, game_wahlen.id DESC"
)or die(mysql_error());
        while(
$wahl $db->fetchArray($wahlenrow)) {
            
$wahl['land'] = $laender2[$wahl['regionid']];
            
$wahlen[] = $wahl;
        } 

Die Ausgabe ist wie folgt:

Code:
Array
(
    [0] => Array
        (
            [0] => 1
            [id] => 1
            [1] => 2
            [regionid] => 2
            [2] => 1168459915
            [starttime] => 1168459915
            [3] => 1168459915
            [endtime] => 1168459915
            [4] => 1168459915
            [kandidaturstart] => 1168459915
            [5] => 1168459915
            [kandidaturende] => 1168459915
            [6] => 1
            [kandidaten] => 1
            [7] => 1
            [wahlsieger] => 1
            [land] => 0
        )

    [1] => Array
        (
            [0] => 1
            [id] => 1
            [1] => 2
            [regionid] => 2
            [2] => 1168459915
            [starttime] => 1168459915
            [3] => 1168459915
            [endtime] => 1168459915
            [4] => 1168459915
            [kandidaturstart] => 1168459915
            [5] => 1168459915
            [kandidaturende] => 1168459915
            [6] => 2
            [kandidaten] => 2
            [7] => 1
            [wahlsieger] => 1
            [land] => 0
        )

)

Nun kann ich damit nix anfangen.
Ich würde gerne mittels eines Queries folgende Struktur haben

Code:
 [1] => Array
        (
            [0] => 1
            [id] => 1
            [1] => 2
            [regionid] => 2
            [2] => 1168459915
            [starttime] => 1168459915
            [3] => 1168459915
            [endtime] => 1168459915
            [4] => 1168459915
            [kandidaturstart] => 1168459915
            [5] => 1168459915
            [kandidaturende] => 1168459915
            [6] => 2
            [kandidaten] => Array 
                                  (
                                    [0] => 1
                                    [1] => 2
                                    [2] => 3
                                   )
            [7] => 1
            [wahlsieger] => 1
            [land] => 0
        )
Hat jemand ne Idee?

[UPDATE]
Kleiner Fehler im Query behoben, sieht aber noch genauso aus
__________________
Vive la France! Welcome to Sarkoworld...

Geändert von ljungi (10.01.2007 um 21:46 Uhr).
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 10.01.2007, 21:47   Nach oben    #2
JumperII
Erfahrener Benutzer
 
Benutzerbild von JumperII
 
Registriert seit: 27.02.2006
Beiträge: 136
Standard

Entschuldigung, aber wie willst Du in einer Query eine Tabelle erstellen, in der pro Record/Zeile eine zweite Tabelle enthalten ist. Ich denke, das Ganze ist eine Frage zweier Querys, die mit PHP in das Wunschformat zusammengeführt werden.

Gruß,
Jumper, the II.
JumperII ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 10.01.2007, 21:49   Nach oben    #3
ljungi
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Jau, dacht ich mir schon fast...

Hatte halt gehofft, dass es dennoch geht!
Schade

Danke trotzdem !
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 10.01.2007, 21:54   Nach oben    #4
Basti
Erfahrener Benutzer
 
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 756
Standard

\edit: Oh, war wohl was langsam...

Das musst du schon mit PHP zusammenschnipsel. Vielleicht etwa so:

PHP-Code:
$aKandidaten = array();

while(
$wahl $db->fetchArray($wahlenrow))
    
$aKandidaten['kandidaten'][] = $wahl['kandidaten'];

$wahl['kandidaten'] = $aKandidaten;
$wahl['land'] = $laender2[$wahl['regionid']];
$wahlen[] = $wahl
Basti
Basti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 10.01.2007, 22:03   Nach oben    #5
ljungi
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Danke, so in etwa hab ich das nun auch.
Hatte es eben immer so, wenn es um diese Struktur ging. Wollts halt mal "eleganter" lösen - mit einem Query.

Schade, dass das nicht geht
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.01.2007, 15:55   Nach oben    #6
MrNiceGuy
Erfahrener Benutzer
 
Benutzerbild von MrNiceGuy
 
Registriert seit: 14.08.2005
Ort: Nienburg / Weser
Beiträge: 623
Standard

Rein theoretisch geht das mit einem Query, dann musst du nur mit PHP hinterher die Daten filtern. Es ist aber fraglich, ob bei großen Datenmengen die Variante mit 2 Queries schneller ist, als die mit einer, da jedes Mal die vollen Informationen über das Spiel mitgeliefert werden.
__________________
Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll
MrNiceGuy ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.01.2007, 16:20   Nach oben    #7
Basti
Erfahrener Benutzer
 
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 756
Standard

...ist doch auch nur eine Query. Wichtig (oder zumindest sinnvoll - je nach Datenmengen und Frequentierung) halt, dass du nicht erst ein Array aus der Ergebnisliste baust, um das dann umzuschreiben, sondern beim Iterieren über die Ergebnisliste eben nur die relevanten Teile rauskopierst.

Basti
Basti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.01.2007, 17:32   Nach oben    #8
ljungi
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Datenmenge wird nach und nach mehr. Vor allem die Tabelle Kandidaten kann nach ner Zeit mehrere hundert Einträge haben. Da sind 2 Queries schneller, denke ich.
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
indireckte Frage zu Template system kampfgnom PHP-Programmierung 4 04.06.2007 04:12
Frage zu Aufklapp-Menü mit CSS Hobbyuser HTML, XML und CSS 8 12.08.2006 18:41
Welches Join soll ich verwenden? Chr!s Datenbanken 8 06.07.2006 12:33
mit LEFT OUTER JOIN mehr als 2 Tabellen verknüpfen ? Alpha Centauri Datenbanken 4 06.04.2006 19:00
Java Programm - Code Frage (Problem) Finki Allgemeine Java-Programmierung 16 23.10.2005 12:36


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:03 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44