Hallo Community,
Ich bin neu hier und habe folgendes Problem:
Ich habe eine Definitionstabelle erstellt, die zum Beispiel für die EN-Nr nach Stahl-Nr. unterschiedliche Parameter zurückgeben soll.
Der Eintrag "undef" soll bedeuten, dass alle anderen Stahl-Nr. diesen Eintrag bekommen sollen.
Dies ist notwendig, da es tausende andere Stahl-Nummern gibt und ich nicht alle eintragen möchte.
Definitionstabelle |
EN | Stahl | ID | max | min |
807 | 9768 | 33707101 | 100 | 80 |
807 | 9470 | 33707102 | 110 | 70 |
807 | 2072 | 33706948 | 150 | 120 |
807 | undef | 26212085 | 120 | 90 |
undef = alle anderen Stahl-Nr. sollen diesen Eintrag erhalten |
Wenn ich jetzt mit meinen Beispieldaten komme
EN | Stahl |
807 | 9470 |
807 | 1200 |
807 | 1500 |
sollte eigentlich die Nr 9470 einen passenden Eintrag finden und die anderen Nummern den Eintrag aus undef erhalten.
Abfrageergenis Soll |
EN | Stahl | ID | max | min |
807 | 9470 | 33707102 | 110 | 70 |
807 | 1200 | 26212085 | 120 | 90 |
807 | 1500 | 26212085 | 120 | 90 |
Ich habe jetzt schon alles versucht, aber ich erhalte immer doppelte oder zu wenig Einträge.
select
a.en,
a.stahl,
b.en,
b.stahl,
b.id,
b.max,
b.min
from Daten a join Detailtabelle b
on a.en = b.en
and (a.stahl = b.stahl or
b.stahl is null )
Danke im voraus