php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.05.2006, 15:02  
Neuer Benutzer
 
Registriert seit: 20.04.2006
Beiträge: 4
MilanX
Standard Problem bei JOIN

Hallo,

ich habe ein Problem beim Verbinden von zwei Tabellen.
Es geht um eine SQL-Abfrage bei einem Tippspiel.

Ich habe zwei Tabellen.

Tabelle1 (punktebackup)
---------
benutzername
punkte_neu
punkte_spiel1
.
.
punkte_spiel9
spieltag


Tabelle2 (tipps)
---------
benutername
spieltag
tipp_m11
tipp_m12
.
.
tipp_m21
tipp_m22


Meine Abfrage:
SELECT * from tipps LEFT JOIN punktebackup on tipps.benutzername = punktebackup.benutzername AND tipps.spieltag = $spieltag WHERE punktebackup.spieltag = $spieltag ORDER BY punktebackup.punkte_neu DESC

Die Abfrage hat leider nur einen kleinen aber entscheidenen Haken. So werden nur die Benutzer ausgegeben, die in beiden Tabelle vorhanden sind. Ich würde aber gerne das alle Benutzer die in der Tabelle tipps vorhanden sind ausgegeben werden. Wenn die Benutzer die in Tabelle tipps vorhanden sind, aber nicht in der Tabelle punktebackup, dann sollten nur die Benutzer mit den Tipps ausgegeben werden. Die Sortierung sollte aber falls der Benutzer in der Tabelle punktebackup vorhanden ist, nach der Spalte punkte_neu in der Tabelle punktebackup erfolgen.

Ist das überhaupt möglich? Hoffe ich habe mich etwas verständlich ausgedrückt.

Ich bin echt schon am verzweifen und wäre für jede Hilfe sehr dankbar.

Gruß MilanX
MilanX ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.05.2006, 15:25  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.232
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

AND tipps.spieltag = $spieltag

Wieso steht obiges in der JOIN-Bedingung? In der Regel führt dies nicht zum gewünschten Ergebnis...



Zitat:
WHERE punktebackup.spieltag = $spieltag
Damit setzt du voraus, dass punktebackup etwas gefunden wird, was dein LEFT JOIN irgendwie zu einem INNER JOIN werden lässt. Mögliche Abwandlung:

WHERE punktebackup.spieltag = $spieltag or punktebackup.spieltag is null
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 03.05.2006, 15:41  
Neuer Benutzer
 
Registriert seit: 20.04.2006
Beiträge: 4
MilanX
Standard

Der soll mir hat von beiden Tabellen nur den Spieltag XX ausgeben.

Code:
WHERE punktebackup.spieltag = $spieltag or punktebackup.spieltag is null
Wenn ich es so versuche, dann werden mir auch die anderen Spieltag ausgegeben.
MilanX ist offline   Mit Zitat antworten
Alt 03.05.2006, 16:36  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.232
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Siehe meine erste Frage bzgl. tipps.spieltag
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
[gelöst]LEFT JOIN, DINSTINCT und trotzdem doppelte?!?! stefanjann Datenbanken 10 06.02.2008 11:49
JOIN / LEFT JOIN und Co prinzli Datenbanken 12 05.11.2007 22:15
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
inner join aus db PHP Tipps 2006 8 22.01.2006 01:23
Select Problem Datenbanken 17 16.01.2006 21:54
[Erledigt] Abfrageproblem mit Inner Join Datenbanken 15 29.11.2005 18:17
[Erledigt] LEFT JOIN Query Bildung Datenbanken 6 04.11.2005 15:24
sql-Abfrage inner join - unerklärliches Problem havok Datenbanken 6 17.10.2005 14:32
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
Join Problem Simon9990 PHP Tipps 2005-2 1 21.07.2005 22:15
Problem mit Where und Join Datenbanken 5 06.07.2005 18:05
[Erledigt] Problem mit JOIN Datenbanken 7 27.08.2004 16:00
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:52 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.