AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi mehrere Spalten gleichzeitig "auflösen"

mehrere Spalten gleichzeitig "auflösen"

Ein Thema von Mongfice · begonnen am 5. Jun 2009 · letzter Beitrag vom 8. Jun 2009
 
Mongfice

Registriert seit: 26. Feb 2009
40 Beiträge
 
Delphi 7 Professional
 
#1

mehrere Spalten gleichzeitig "auflösen"

  Alt 5. Jun 2009, 15:36
Datenbank: MySQL • Version: 6.0 • Zugriff über: MyDAC
Moin,
ich hab ein Problem... - evtl. bin ich auch einfach nur zu blöd grad...

Ich habe zwei Datenbanktabellen, sagen wir Kunde und Bücher (um das ganze mal auf nen Verständliches Szenario zu bringen ).
In der Tabelle Kunde sind die Kundendaten gespeichert, sowie die Daten welche Bücher ein Kunde ausgeliehen hat.
Jeder Kunde darf maximal 3 Bücher entleihen, dafür gibt es drei Spalten, Buch1, Buch2 und Buch3.
In der Büchertabelle sind eben die Daten des Buches gespeichert.

Jetzt hinterlege ich in der Kundentabelle in den entsprechenden Spalten die ID des Buches, welches er entliehen hat - jede Spalte kann also ggf. auch leer sein.

Das Problem, was ich grad irgendwie nicht gelöst bekomme, ist wie ich die ID der Bücher z.B. auf den Titel übersetzt bekomme...

Für eine einzelne der Spalten hab ich folgendes gemacht:

SQL-Code:
Select A.Kundennummer, B.Buchtitel
from Kunden A, Buecher B
where A.Kundenummer = 0815
AND A.Buch1 = B.ID
Um direkt zwei Spalten zu übersetzten habe ich (testweise) dann nochmal Buecher reingepackt, also

SQL-Code:
Select A.Kundennummer, B.Buchtitel, C.Buchtitel
from Kunden A, Buecher B, Buecher C
where A.Kundenummer = 0815
AND A.Buch1 = B.ID
AND A.Buch2 = C.ID
das geht zwar noch, aber dauer schon ewig (die Tabellen sind nicht gerade klein). Auf diese Weise alle 3 Spalten gleichzeitig übersetzen zu wollen macht aber der SQL-Server schon nicht mehr mit...

Hab mir dann gedacht, klar, ich mach ne Select-Abfrage über die drei einzelnen Abfragen, sprich

SELECT * from (UbersersetungA) A, (ÜbersetzungB) B, (ÜbersetzungC) C (ich weiß, dass ich dann 3x die Kundennummer habe, das ist nur zur Verkürzten Darstellung hier)
Leider funktioniert das nur, wenn auch wirklich 3 Bücher entliehen sind. Ist einer der Einträge "null", dann bekomme ich gar keine Zeile zurück.

Kann mir da evtl. jemand nen Tip geben, wie ich auch die nen Ergebnis bekomme, wenn eine der Spalten "null" ist?

Brauch halt an sich etwas, das hinterher so aussieht:
Kundennummer | Buch1 | Buch2 | Buch3

Liebe Grüße
Mongfice
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz