AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken [SQL] Doppelter Join der gleichen Tabelle
Thema durchsuchen
Ansicht
Themen-Optionen

[SQL] Doppelter Join der gleichen Tabelle

Ein Thema von gsh · begonnen am 20. Jan 2011 · letzter Beitrag vom 20. Jan 2011
Antwort Antwort
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#1

[SQL] Doppelter Join der gleichen Tabelle

  Alt 20. Jan 2011, 13:13
Datenbank: MySQL • Version: 5.0 • Zugriff über: direct
Hallo Leute,

ich hab da mal eine SQL Frage an euch. Bin selber leider mit Joins noch nicht ganz fit.

Ich habe zwei Tabellen (gekürzt):
Daten:
id: INT, responsible_main: INT, responsible_backup: INT;

Responsible:
id: INT, name: VARCHAR(100);


Im Programm möchte ich jetzt alle Daten ausgeben. Bei den Daten soll jetzt aber logischerweiße nicht die IDs stehen sondern der Name von dem Responsible. Normal würde ich da jetzt einfach ein Join machen. Das Problem ist aber das ich zwei resposible hab (Main und Backup) und zwei mal die gleiche Tabelle reinjoinen geht auch nicht weil die spaltennamen dann schon exisiteren.

Wisst ihr dafür eine Lösung oder kann man das vielleicht auch einfach über zwei "unter Selects" lösen?
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: [SQL] Doppelter Join der gleichen Tabelle

  Alt 20. Jan 2011, 13:15
Wenn Du Aliase verwendest, kannst Du die Tabelle auch mehrfach joinen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#3

AW: [SQL] Doppelter Join der gleichen Tabelle

  Alt 20. Jan 2011, 13:40
Wenn Du Aliase verwendest, kannst Du die Tabelle auch mehrfach joinen.
Bei den letzten Versuchen hat das irgendwie nie richtig funktioniert.
Jetzt hab ich es aber einfach noch mal versucht und es klappte auf anhieb.
Damit der Thread nicht vollkommen sinnlos ist hier für die Nachwelt:
Code:
SELECT Data.id, responsible_main, responsible_backup, RespMain.name AS responsible_main_name, RespBackup.name AS responsible_backup_name FROM `Table_daten` Data
JOIN `Table_responsible` RespMain ON (RespMain.`id` = Data.`responsible_main`)
JOIN `Table_responsible` RespBackup ON (RespBackup.`id` = Data.`responsible_backup`)
WHERE ...;
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Antwort Antwort


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 14:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz