Ankündigung

Einklappen
Keine Ankündigung bisher.

MySQL-Abfrage, Verknüpfung zweier Abfragen

Einklappen

Neue Werbung 2019

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

  • MySQL-Abfrage, Verknüpfung zweier Abfragen

    Hallo, ich möchte eine Brief-Datenbank entwickeln und habe hierzu zwei Tabellen angelegt:
    post und personen.

    Die Tabelle "post" enthält u.a. folgende Spalten: post_id (Primärschlüssel), adressat_p_id (Fremdschlüssel) und absender_p_id (Fremdschlüssel), datum, ...
    Die Tabelle "personen": p_id (Primärschlüssel), name, vorname,...

    Die Idee dahinter war, dass Personen sowohl als Absender als auch als Adressaten auftreten können und eine Aufteilung der Tabelle "personen" in "absender" und "adressaten" zu entsprechend vielen Redundanzen geführt hätte.

    Nun habe ich allerdings ein Problem mit den Abfragen:
    Kann mir jemand sagen, ob, und wenn ja wie, es in einer Abfrage möglich ist, sowohl den Absender (Vorname + Nachname) als auch den Empfänger ("") eines Briefes auszugeben?

    Lösung mit zwei Abfragen:

    1) SELECT name AS Name_Absender, vorname AS Vorname_Absender FROM personen, post WHERE absender_p_id = p_id

    2) SELECT name AS Name_Adressat, vorname AS Vorname_Adressat FROM personen, post WHERE adressat_p_id = p_id

    Mit UNION hat es leider nicht funktioniert... (Bin allerdings SQL-Neuling...)
    Oder wäre es sinnvoll, noch eine dritte Tabelle anzulegen?

    Ich hoffe, jemand kann mir weiterhelfen?! Danke schon einmal!
    Beitrag bearbeiten/löschen

  • #2
    SInnvoll wäre, sich mal über JOINs schlau zu machen.
    [COLOR="#F5F5FF"]--[/COLOR]
    [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
    [COLOR="#F5F5FF"]
    --[/COLOR]

    Kommentar


    • #3
      Zitat von nikosch Beitrag anzeigen
      SInnvoll wäre, sich mal über JOINs schlau zu machen.
      Er macht einen JOIN, nur ist einer zu wenig. Eine ausführliche Antwort hat er aber schon woanders, daher gehe ich nicht weiter drauf ein.
      PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

      Kommentar


      • #4
        Joins explizit zu formulieren wäre die Basis jeder guten Weiterarbeit.
        [URL="https://github.com/chrisandchris"]GitHub.com - ChrisAndChris[/URL] - [URL="https://github.com/chrisandchris/symfony-rowmapper"]RowMapper und QueryBuilder für MySQL-Datenbanken[/URL]

        Kommentar


        • #5
          Zitat von ChristianK Beitrag anzeigen
          Joins explizit zu formulieren wäre die Basis jeder guten Weiterarbeit.
          Das ist allerdings zu 100% korrekt.
          PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

          Kommentar

          Lädt...
          X