HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum
 

 
 

Anzeige 
 
HTMLWorld » Forum

Thema anzeigen - zwei Tabellen mit einander verknüpfen lassen

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

zwei Tabellen mit einander verknüpfen lassen

 

Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   MySQL
Vorheriges Thema:
Nächstes Thema:  
Autor Nachricht
Sir Quicksand
Häufiger Poster


Anmeldungsdatum: 19.01.2005
Beiträge: 304
Wohnort: Hannover

BeitragVerfasst am: 02.03.2006 23:41:50    Titel: Antworten mit Zitat

Ganz hab ich nicht verstanden was Du möchtest. Daten aus 2 oder mehreren Tabellen kannst Du so rausholen:
SELECT tab1.benutzer, tab2.punkte FROM `benutzer`, `punkte` WHERE tab1.eintrittsdatum > '2005-10-10' ORDER BY tab2.punkte
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
l-roy
Häufiger Poster


Anmeldungsdatum: 14.02.2006
Beiträge: 64

BeitragVerfasst am: 03.03.2006 08:54:47    Titel: Antworten mit Zitat

Ich glaube, dass die Lösung von Sir Quicksand leicht fehlerbehaftet ist, da die Definition des Inner Joins fehlt.. Wink

Eine Lösung, die ich mir jetzt mal aus dem, was du so schreibst zusammenreime, könnte lauten:

Liste der Mitglieder nach Punkten
Code:
SELECT benutzer.name, benutzer.eps, gang.name
FROM benutzer, gang
WHERE benutzer.gangid=gang.id
ORDER BY eps;


Liste der Gangs (hier nach eps sortiert):

Code:
SELECT gang.name, sum(eps) as points, count(benutzer.id)
FROM benutzer, gang
WHERE benutzer.gangid=gang.id
GROUP BY gang.name
ORDER BY sum(eps);


Ich hoffe, das paßt so halbwegs mit dem zusammen, was du machen willst.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sir Quicksand
Häufiger Poster


Anmeldungsdatum: 19.01.2005
Beiträge: 304
Wohnort: Hannover

BeitragVerfasst am: 03.03.2006 13:55:29    Titel: Antworten mit Zitat

pöh, meins funzt auch. ^^
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
l-roy
Häufiger Poster


Anmeldungsdatum: 14.02.2006
Beiträge: 64

BeitragVerfasst am: 06.03.2006 08:35:04    Titel: Antworten mit Zitat

Code:
SELECT
sum(benutzerdaten.eps) AS gang_eps,
count(benutzerdaten.Id) AS mitglieder,
round(avg(benutzerdaten.eps),2) AS mittelwert,
benutzerdaten.gang,
gang.gang AS gang_name,
gang.id AS gang_id
FROM benutzerdaten, gang
WHERE benutzerdaten.gang=gang.id
GROUP BY gang_id, gang.gang
ORDER BY gang_eps ASC


.. wäre eine Lösung, die Sortierung steht dir natürlich dann natürlich frei. Wink

By the way:
Sir Quicksands Lösungshinweis vom 2.3. liefert zwar ein Resultat, allerdings sind Kreuztabellen selten das gewünschte Ergebnis einer Abfrage. Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   MySQL
Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.