Abfrageproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfrageproblem

    Hallo zusammen !!

    Ich habe eine Tabelle namens test1 mit folgendem Aufbau :

    Feld1,Feld2,Feld3,Feld4,zu1_1,zu1_2,zu1_3,zu1_4,zu1_5

    Ich möchte folgendes erreichen :

    Satz1 = A1,B1,C1,D1,100, , , ,
    Satz2 = A2,B2,C2,D2,100,200, , ,
    Satz3 = A3,B3,C3,D3,100,200,300, ,

    Die Felder zu1.. können gefüllt oder leer sein.
    Es ist allerdings immer ein Eintrag drin.

    Für jeden Eintrag in den zu1.. Feldern soll ein eigener Ergebnissatz rauskommen.

    Im Beispiel wären das 5 ergebnissätze.

    Man kann sich das so vorstellen :
    Feld1 - 4 beschreibt ein Ersatzteil und die zu1.. Felder sind Modellbezeichnungnungen.
    Im Ergebnis sollen alle Modelle einzeln aufgelistet werden.
    d.h.
    Wenn es von einem Ersatzteil mehrere Modelle gibt, dann soll auch jedes einzeln angezeigt werden.

    Ich hoffe man kann das Problem erkennen

    Gruss Jogi

  • #2
    mh... sorry, aber mit deiner Beschreibung kann ich leider nicht so viel anfangen, damit es reicht, etwas dazu zu sagen....

    kannst du das etwas weiter präzisieren ?

    vorteilhaft wären etwas aussagekräftigere spaltennamen und inhalte und eine etwas ausführlichere beschreibung, was wohin gehört, mit wem irgendwie zusammengehört und was du dann wie genau haben willst!

    gruss

    Kommentar


    • #3
      Ich versuche es an einem Beispiel zu erkären .

      Tabelle :
      Hersteller | Hersteller_Nr | Mod1 | Mod2| Mod3| ...

      Werte in Tabelle :

      Mercedes 0015 W124 W123 W127
      BMW 0016 E30 E36 E21
      ...

      Also, ein Hersteller -> mehrere Modelle .
      Pro Hersteller muss ein Modell vorhanden sein .

      Als Ergebnis benötige ich folgendes :
      BMW E30
      BMW E36
      BMW E21
      ...
      Im Ergebnisarray soll für jedes Modell ein eigener Datensatz vorhanden sein .

      Ich hoffe du kannst mir folgen !!

      Gruss

      Kommentar


      • #4
        dann normalisier deine datenbank

        mach aus deiner einen tabelle einfach 2
        Code:
        tabelle hersteller
        hersteller_id | hersteller_name | ...
        
        
        tabelle modell
        modell_id | hersteller_id | modell_name
        lässt sich wunderbarst abfragen
        Code:
        SELECT 
          h.hersteller_name, m.modell_name
        FROM
          hersteller h
          INNER JOIN modell m ON h.hersteller_id=m.hersteller_id
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Erstmal, danke für deinen Vorschlag !


          Die Datenbank kann ich nicht verändern .


          Gibt es also keine Möglichkeit, das ganze ohne Änderung an der DB zu machen ?

          Kommentar


          • #6
            wobei eine normalisierung den größeren Mehrwert hätte (leichtere abfragen durch die verknüpfungen...)

            ok, geht nicht, dann wie folgt...

            du holst dir die zeile aus der datenbank und mußt dann halt mit dem selben hersteller halt so oft die daten ausgeben, wie modelle vorhanden sind!

            gruss

            Kommentar


            • #7
              Die Datenbank kann ich nicht verändern .
              dann möchte ich dich bitten, der ersteller/erdenker dieser datenbankstruktur von mir in den ...

              wer macht denn sowas?

              dann lies doch die tabelle vollständig aus, erstell (on-the-fly) zwei neue und frage diese ab ...

              Gibt es also keine Möglichkeit, das ganze ohne Änderung an der DB zu machen ?
              du mußt dir halt ne abfrage für alle möglichen spalten basteln ... viel spaß das würde gehen, ist aber imho unperfomant, extrem aufwendig und extrem dämlich, die anzahl der spalten ist btw begrenzt.
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar

              Lädt...
              X