Announcement

Collapse
No announcement yet.

JOIN ohne Join-Feld???

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • JOIN ohne Join-Feld???

    Hallo,

    ich habe ein Problem mit einer eigentlich einfachen Aufgabenstellung.
    Leider ist die DB so wie sie ist, designtechnisch eher suboptimal, daher weiß ich nicht so recht welcher Lösungsansatz dafür passt.

    Ich habe eine Tabelle Artikel, die hat (u.a.) 25 Felder, die heissen einfach GruppeA1, GruppeA2, .... GruppeA25.
    Diese Felder sind vom Datentyp "Boolean" (Ja/Nein).
    Jeder Artikel hat nun Zuweisungen zu einer oder mehreren Gruppen.

    Dann existiert eine 2. Tabelle AGruppen.
    Hier sind derzeit 20 Gruppen erfasst, u.a. mit Gruppennummer, Bezeichnung, ...

    Ich möchte mit SQL eine einfache Gruppen-Auswertung bekommen:

    Gruppe A1 Das ist die Gruppe A1
    Art. 4711
    Art. 4719
    Art. 4722
    Gruppe A2 Das ist die Gruppe A2
    Art. 4711
    Art. 4730
    Gruppe A3 Das ist die Gruppe A3
    Art. 4722
    Art. 4730
    Art. 4744

    usw.

    Da die Gruppennummer nicht Bestandteil der Tabelle Artikel ist, habe ich überhaupt kein Join-Feld???

    Wie kann ich von der Gruppen-Tabelle auf Artikel joinen???
    Und selbst wenn das irgendwie ginge, müsste ich ja 25 Mal JOINEN, da ja jedes der 25 Gruppenfelder in Artikel zugeordnet sein kann!?!?
    Das wäre ja sehr sehr umständlich!

    Gibt es hierzu einen Lösungsansatz???

    Vielen Dank im Voraus!!!

    Florian

  • #2
    Hi,
    in etwa so:

    Select Agruppen.Gruppe,Artikel.Artikelnr
    where
    (Agruppen.Gruppe='A1' And Artikel.GruppeA1)
    OR
    (Agruppen.Gruppe='A2' And Artikel.GruppeA2)
    ... usw. bis 25

    Order by AGruppen.Gruppe, Artikel.Artikelnr

    Gruß
    docendo discimus

    Comment


    • #3
      Originally posted by frauwue View Post
      Hi,
      in etwa so:

      Select Agruppen.Gruppe,Artikel.Artikelnr
      where
      (Agruppen.Gruppe='A1' And Artikel.GruppeA1)
      OR
      (Agruppen.Gruppe='A2' And Artikel.GruppeA2)
      ... usw. bis 25

      Order by AGruppen.Gruppe, Artikel.Artikelnr

      Gruß
      ... obiges ergänzt um FROM Agruppen, Artikel ist es genau das was ich gesucht habe!!!
      Danke!
      Wusste ich nicht, dass man hinter From einfach mehrere Tabellen aufzählen kann ...

      Florian

      Comment

      Working...
      X