DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: SQL | Thema: Re: SELECT über drei Tabellen | Von: G. Guest ( 03.03.2006 09:40)

In der Tabelle Kontenbuch gibt es eben eine Nummer (Source No_). Diese Nummer gehört zu einem Debitor oder zu einem Kreditor oder auch zu beiden. Über diese Nummer will ich mir den Namen holen.
Hier mal ein kurzes Beispiel über den Aufbau der Tabellen:

Tabelle-Kontenbuch

ID LAGERPLATZ LAGERORT MENGE ERZEUGERNUMMER
1 Regal03 Halle02 20kg 50170
2 Regal02 Halle01 13kg 50180
3 Regal04 Halle07 34kg 50210

Tabelle-Debitoren
ID NAME ADRESSE
50170 Müller Musterstr. 17
50180 Schmidt Bahnhof 5

Tabelle-Kreditoren
ID NAME ADRESSE
50170 Müller Musterstr. 17
50210 Schneider Glückaufstr. 45

So sehen die Tabellen aus. Meine gewünschte Ausgabe soll dann folgendermaßen aussehen:

ID LAGERPLATZ LAGERORT MENGE ERZEUGERNUMMER NAME
1 Regal03 Halle02 20kg 50170 Müller
1 Regal03 Halle02 20kg 50170 Müller
2 Regal02 Halle01 13kg 50180 Schmidt
3 Regal04 Halle07 34kg 50210 Schneider

Wie du siehst, kann es auch doppelte Einträge geben in meiner Ausgabe.



Betreff Von Datum
Re: SELECT über drei Tabellen
Hallo Guest,<br><br>das ganze kannst Du z.B. mit einer SubQuery<br>SELECT ID, ..., ISNULL((SELECT NAME FROM Tabelle-Debitoren WHERE ID = Tabelle-Kontenbuch.ERZEUGERNUMMER), (SELECT NAME FROM...
Ansgar Sommer 03.03.2006 10:34
Re: SELECT über drei Tabellen
Sorry, habe einen Logischen Fehler drin so sollte es richtig sein:<br>SELECT ID, ..., CASE (SELECT COUNT(ID) FROM Tabelle-Debitoren WHERE ID = Tabelle-Kontenbuch.ERZEUGERNUMMER) WHEN 0 THEN<br>(SELECT...
Ansgar Sommer 03.03.2006 10:36
Re: SELECT über drei Tabellen
Danke schon mal für deine Mühe aber ich hab da noch eine Frage zu deiner Abfrage. Der Teil mit WHEN und ELSE stellt doch ein ENTWEDER-ODER da. Was ist aber wenn die ID in der Tabelle-Debitoren UND der...
G. Guest 03.03.2006 10:47
Re: SELECT über drei Tabellen
Hier mal mein Ansatz den ich bisher habe, nicht geschockt sein!<br><br>SELECT [Entsorger AG$Waste Ledger Entry_1].[Source No_] AS [Herkunftsnr.], [Entsorger AG$Customer].Name, <br> ...
G. Guest 03.03.2006 10:53
Re: SELECT über drei Tabellen
Hallo Guest,<br><br>das war eigentlich schon gestern meine Frage bezüglich der doppelten ID's. Die Abfrage ist Jetzt so aufgebaut das die Tabelle-Kreditoren Vorrang hat eine Ander Lösung fällt mir dazu...
Ansgar Sommer 03.03.2006 10:56
Re: SELECT über drei Tabellen
Leider wird die komplette Tabellenlogik so von einem großen ERP-System vorgegeben. Da kann ich also nichts ändern.<br><br>Aber danke trotzdem für deine Mühen.
G. Guest 03.03.2006 11:00
Re: SELECT über drei Tabellen
Hallo Guest,<br><br>ich meine mit dem Out Join bekommst Du Hausgemachte Performence Probleme, ich gehe mal davon aus die Debitoren und Kreditoren evtl. einen gemeinsamen ID Schlüssel haben oder kann der...
Ansgar Sommer 03.03.2006 11:10
Re: SELECT über drei Tabellen
Ich ziehe jetzt nicht über bestehende Systeme her. Kann nur sagen das es ein großes, bekanntes ERP-System ist.<br>Es ist nicht egal ob die Daten aus der Tabelle Kreditor oder Debitor kommen, da es ja...
G. Guest 03.03.2006 11:21
Re: SELECT über drei Tabellen
Hallo Guest,<br><br>ich möchte auch nicht über bestehende System herziehen aber das Problem mit der Logik bleit denn noch.<br>Meinst Du mit doppeltnennungen das beide Namen als der aus den Kreditoren und...
Ansgar Sommer 03.03.2006 11:37
Re: SELECT über drei Tabellen
Genau, es gibt in dem System eben Personen die Debitoren sind und gleichzeitig auch mit ihrer Nummer Kreditoren sein können.<br>Dadurch bekomme und brauche ich hinterher eben auch doppelte Datensätze.
G. Guest 03.03.2006 11:42
Re: SELECT über drei Tabellen
Am besten Du wichst Dir erst einmal einen und dann kannste ja mal vor Deine Tür gehen und Deinen vollgewichsten Schwanz der nächst besten Frau zeigen.
G. Guest 03.03.2006 14:12

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Advanced Developers Conference vom 14.-15. Februar 2011

© Copyright 2003 ppedv AG