 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
26.02.2008, 10:39
|
#1
|
|
TP-Insider
Registriert seit: Jul 2004
Ort: Ingolstadt
|
[MySQL] JOIN's und MySQL 5
Hallo,
ich hab ein Problem mit folgender SQL Abfrage:
Code:
SELECT u.userid, u.username, u.invisible, u.receivepm, u.lastactivity, uf.* FROM bb1_users u, bb1_groups g LEFT JOIN bb1_userfields uf ON (u.userid=uf.userid) WHERE u.groupid = g.groupid AND g.ismod=1 ORDER BY u.username ASC
Und zwar bekomm ich die Fehlermeldung: mysql error: Unknown column 'u.userid' in 'on clause'
Hab dann über Google rausgekriegt dass das irgendwas mit den JOIN's und der Umstellung von MySQL Version von 4 auf 5. Doch leider hab ich nur Grundkenntnisse in SQL und kein Ahnung von JOIN's und find auch irgendwie keine Tutorials wo dass ordentlich erklärt wird.
Wär also super wenn mir irgendjemand sagen könnte was ich an der Abfrage ändern muss
dallasstar
|
|
|
26.02.2008, 11:24
|
#2
|
|
TP-Moderator
Registriert seit: Nov 2005
Ort: Köln
|
Probier mal
Code:
SELECT u.userid, u.username, u.invisible, u.receivepm, u.lastactivity, uf.*
FROM bb1_users u
JOIN bb1_groups g ON (u.groupid = g.groupid)
LEFT JOIN bb1_userfields uf ON (u.userid=uf.userid)
WHERE g.ismod=1
ORDER BY u.username ASC
Bei Deiner Abfrage versuchst Du die groups mit den userfields zu joinen
|
|
|
26.02.2008, 12:32
|
#3
|
|
TP-Insider
Registriert seit: Jul 2004
Ort: Ingolstadt
|
Danke, scheint zu funktionieren. Kann's aber erst heute Abend endgültig testen, aber das was der PHPMyAdmin ausgibt schaut schonmal gut aus 
|
|
|
26.02.2008, 16:23
|
#4
|
|
TP-Senior
Registriert seit: Nov 2002
|
Hallo!
wenn Du schon gleichlautende Schlüssel in deiner DB-Modell nutzt, solltest Du auch den "NATURAL JOIN" nutzen - der ist für diesen Zweck implementiert und wesentlich performanter als ein "normaler" JOIN.
Beste Grüße,
__________________
...zur Zeit außer Betrieb...
|
|
|
26.02.2008, 17:11
|
#5
|
|
TP-Insider
Registriert seit: Jul 2004
Ort: Ingolstadt
|
Wenn du mir sagst was das ist gerne? 
|
|
|
26.02.2008, 18:28
|
#6
|
|
TP-Special Mod
Registriert seit: Feb 2005
Ort: Haan / NRW
|
Geändert von Rizzo (03.03.2008 um 18:55 Uhr).
Grund: Link zur Wiki gefixt
|
|
|
27.02.2008, 21:23
|
#7
|
|
TP-Insider
Registriert seit: Jul 2004
Ort: Ingolstadt
|
Zitat:
Zitat von Cybergreek
Probier mal
Code:
SELECT u.userid, u.username, u.invisible, u.receivepm, u.lastactivity, uf.*
FROM bb1_users u
JOIN bb1_groups g ON (u.groupid = g.groupid)
LEFT JOIN bb1_userfields uf ON (u.userid=uf.userid)
WHERE g.ismod=1
ORDER BY u.username ASC
Bei Deiner Abfrage versuchst Du die groups mit den userfields zu joinen
|
Habs gerade eingebaut, funktioniert. Danke nochmal
Werd mich mal ein bisschen in das Thema einlesen, vielleicht krieg ich's ja mit dem NATURAL JOIN hin
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 00:25 Uhr.
|
 |