Verstrickte Abfrage
LaBoLe
- datenbank
-1 Cheatah0 LaBoLe0 Vinzenz Mai1 LaBoLe
1 Vinzenz Mai
Hi Leude,
ich hab hier ne abfrage die net functioniert. Ich hoffe es ist er kennbar was ich will mit der abfrage.
Also ich hab 3 Tabellen von denen ich informationen brauche:
termine
-Datum
-kurzbesch
kunden
-firma
namen
-anrede
-name
-vorname
und das is die abfrage die ich net weiter komm (hab ich erst mal so aufgestellt um überhaubt erst mal zu sehen ob es geht):
SELECT termine.datum, kunden.firma, namen.name
FROM user LEFT JOIN kunden LEFT JOIN termine LEFT JOIN namen ON (termine.kundenid=kunden.id) ON (kunden.userid=user.id) ON (iser.id=1);
Ich hoffe mir kann jemand weiter helfen ^^
Hi,
Ich hoffe mir kann jemand weiter helfen ^^
"user" schreibt man mit verhältnismäßig wenigen "i". Ansonsten fehlt zu Deinem Problem nicht nur die Fehlerbeschreibung, sondern sogar jeder Ansatz einer solchen.
Cheatah
sorry
wolte mir nur bisl schreib arbeit ersparen ^^
Ich verwende MySQL 5.0.15
Was ich will:
Ich hab eine termin anzeige für genau einen user. und dor soll aus den tabellen mir die daten angezeigt werden. Ich beschreibb mal dir realionen dazu die mehr oder wehniger in einer abfrage stattfinden sollen.
1 user (id) hat n termine (datum, kurzbesch) ;
1 termin bei 1 kunden (firma) ;
1.kunde bei 1 person (name, vorname) ;
Das was ich an daten haben will, also des spalten steht in klammern die bezieungen sind dann jeweils die tabellen um die es sich dreht. Des weiteren soll das damit zeigen welche beziungen die alle haben soll in der abfrage.
Ja ich weis das die abfrage falsch ist, deswegen frag ich hier ja nach ^^
Hallo
Ich verwende MySQL 5.0.15
Dann kannst Du anwenden, was in Fortgeschrittene Joins steht. Wenn Du etwas nicht verstehst, wäre ich über Rückmeldung dankbar. Ich möchte den Artikel schließlich verbessern.
Freundliche Grüße
Vinzenz
Ja bin mit dem Artikel bin ich gut zurecht gekomen ^^ thx
war noch fehler von mir, da nämlich noch ne relation in der datenbank fehlt deswegen hat mich das auch so verwirrt.
lösung hab ich jetzt erstmal damit gefunden:
SELECT termine.datum, termine.beschkurz, kunden.firma
FROM user INNER JOIN termine ON (termine.userid=user.id) RIGHT JOIN kunden ON (termine.kundenid=kunden.id)
WHERE user.id=1;
---
TRUNCATE gehirn;
DROP kopf;
Hallo LaBoLe,
ich hab hier ne abfrage die net functioniert. Ich hoffe es ist er kennbar was ich will mit der abfrage.
nein. Das ist es beim besten Willen nicht.
termine
-Datum
-kurzbeschkunden
-firmanamen
-anrede
-name
-vorname
SELECT termine.datum, kunden.firma, namen.name
FROM user LEFT JOIN kunden LEFT JOIN termine LEFT JOIN namen ON (termine.kundenid=kunden.id) ON (kunden.userid=user.id) ON (iser.id=1);
Wo ist die Tabelle user? Wo sind die Spalten, die in Deinen (syntaktisch falschen) Bedingungen auftreten?
Formuliere bitte in Worten, welche Daten Du haben möchtest. Nein, versuche nicht ein SQL-Statement zu erstellen. Beschreibe uns die Daten, die Deine Abfrage zurückliefen soll.
Gib' uns Dein Datenbankmanagementsystem an, mit Versionsangabe. Gerade das häufig anzutreffende MySQL ist bei Versionen unter 5.0.x alles andere als standardkonform.
Lektüre zu Joins gibt es da:
Einführung Joins
Fortgeschrittene Joins
Freundliche Grüße
Vinzenz