Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] praktisches Datenbank-"design" für JOIN

Einklappen

Neue Werbung 2019

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

  • [Erledigt] praktisches Datenbank-"design" für JOIN

    Hallo,

    es ist zwar nicht so, dass sich zu dem Thema nicht Informationen finden lassen, doch ganz genau wurde dieses Thema noch nicht aufgegriffen.

    Verwende ich JOIN, besteht das Ergebnis ja aus selbst ausgewählten Informationen. Also, nehmen wir an, ich habe folgende zwei Tabellen:

    politiker
    Code:
    | id | partei | name             | 
    | 1  | 1      | Angela Merkel    |
    | 2  | 2      | Gerhard Schröder |
    | 3  | 3      | ...              |

    partei
    Code:
    | id | name |
    | 1  | CDU  |
    | 2  | SPD  |
    | 3  | ...  |

    Für das Ergebnis brauche ich beide "id" und beide "name" Felder und frage mich nun, wie ich an diese getrennt herankomme.

    Die Ergebnisse lese ich aus einem assoziativen Array aus. Allerdings habe ich dann $politik['id'], bräuchte aber sowas wie $politik['id1'] oder $politik['politiker_id'] und $politik['partei_id'].

    Nun stellt sich mir die Frage, ob es üblich ist, seine Tabellen, gleich richtig zu benennen, also politiker_id statt id und partei_id statt id und partei_name statt nur name oder es ganz andere Möglichkeiten (vielleicht innerhalb der SQl Anweisung) gibt.

    Außerdem wüsste ich in diesem Zusammenhang gerne, wie man folgendes möglicherweise mit JOIN umsetzen kann:
    Angenommen, ich möchte zu jeder Partei zwei Politiker vorstellen, kann ich das in einem JOIN verpacken und (wichtig!) wie komme ich dann da (wo ich selbst mit richtig benannten Spaltennamen Doppelungen habe) an getrennte Ergebnisse?

  • #2
    Du kannst den Ergebnisfeldern neue Namen zuweisen, genauso wie einzelnen Tabellen.
    Code:
    SELECT 
      a.name as politiker_name
      b.name as partei_name1
      c.name as partei_name2
    FROM
      politiker as a
    JOIN
      parteien as b
    ...
    JOIN
      parteien as c
    ...

    Kommentar


    • #3
      Ich danke. Habe das zwar schon mal gesehen, aber - ehrlich gesagt - ganz vergessen. Super, dann kann ich ja nun fortfahren ...

      Kommentar

      Lädt...
      X