WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

 
 
Themen-Optionen Ansicht
Alt 03.10.2008, 17:09   #1
RaistlinMajere
Inventar
 
Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343


Standard Suche SQL-Abfrage

hi,

ich hoffe ihr könnt mir bei dem folgenden problem helfen (sitze jetzt schon einige Stunden daran):

ich habe 3 tabellen: services, changeform und personen

ich möchte nun über changeform eine abfrage machen. dort sind u.a. IDs enthalten, die auf die anderen beiden tabellen verweisen (s_id bzw. p_id) und dort genau so heißen.
ich möchte nun bei meiner abfrage nicht nur einfach die einträge aus changeform haben, sondern anstatt der IDs die entsprechenden einträge aus den anderen beiden tabellen.

das wäre an und für sich nicht so schwierig über

Code:
SELECT
   CF.<alle spalten, die ich haben will>,
   S.s_name,
   P.p_name
FROM
   changeform CF,
   personen P,
   services S
WHERE
   CF.s_id=S.s_id
AND
   CF.p_id=P.p_id
;
das problem ist nur, daß der eintrag für p_id in changeform nur optional ist, defaultmäßig steht da 0 drin. ich möchte nun eine abfrage, die überprüft, ob da was anderes als 0 drinsteht und ggf., neben den anderen einträgen, anstatt der s_id den entsprechenden namen aus personen holt (dort existiert kein eintrag für s_id=0). falls 0 drin steht, kann das ruhig zurückgegeben werden, das bedeutet dann einfach "da steht nichts drin".

als ergebnis sollen alle einträge aus changeform ausgegeben werden mit den entsprechenden werten aus den anderen beiden tabellen anstatt der IDs sowie, falls p_id=0, genau das anstatt eines werts (den es ja nicht gibt, weil in personen kein eintrag dafür existiert) zurückgegeben wird.

wie müßte ein solches statement aussehen (DB ist MySQL)?
____________________________________
"Life is like a box of rockets," said the Marine. "You never know what you´re gonna ret."
Then he pulled the trigger of his BFG9000.
RaistlinMajere ist offline   Mit Zitat antworten
 


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

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.

Gehe zu


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


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag