Ankündigung

Einklappen
Keine Ankündigung bisher.

mySQL Unterabfrage ?

Einklappen

Neue Werbung 2019

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

  • mySQL Unterabfrage ?

    Hallo,

    bin in SQL Abfragen noch nicht so fit und könnte Hilfe gebrauchen. Folgendes Problem:

    Tabelle A beinhaltet jornalistische Artikel mit einer eindeutigen ID, zusätlichen Daten wir Kategorie, Erstell-Datum etc.

    Tabelle B enthält Angaben zu den Autoren eines jeweiligen Artikels, also auch die ID aus Tabelle A. Darunter auch die Angabe ob ein bzw. welcher Autor der verantwortliche Autor ist. Es können also mehrere Autoren für einen Artikel existieren aber nur einer ist als verantwortlich gekennzeichnet.

    Nun möchte ich die Überschriften aller Artikel als Liste (Übersicht) auslesen und den Namen des verantwortlichen Autors. Mit einem JOIN verbinde ich die beiden Tabellen über die ID. Aber ich schaffe es nicht, jeden Artikel nur 1x mit dem jeweils verantwortlichen Autor auszugeben. GROUP gibt mir nur den ersten ausgelesenene Autoren zurück, der muss aber nicht auch der verantwortliche sein. Das JOIN liefert immer soviele Ergebnisse für einen Artikel, wie ich Autoren dafür in Tabelle B habe.

    Ich könnte zwei Abfragen daraus machen, aber man soll die Liste nach Autoren sortieren können. Damit muss die Angaben über den Autor in der selbem Abfrage laufen, sonst geht das ja nicht.

    Gibt es eine Lösung für dieses Problem und kann mir jemand helfen?

    Vielen Dank!
    Gruß Robert

  • #2
    Zitat von robertthomas Beitrag anzeigen
    Nun möchte ich die Überschriften aller Artikel als Liste (Übersicht) auslesen und den Namen des verantwortlichen Autors. Mit einem JOIN verbinde ich die beiden Tabellen über die ID.
    Verwende eine zusammengesetzte JOIN-Bedingung:
    Code:
    artikelautoren.ID = artikel.ID AND artikelautoren.verantwortlich = TRUE
    Komplizierter wird es, wenn auch die anderen beteiligten Autoren im Datensatz auftauchen sollen.

    Zitat von robertthomas Beitrag anzeigen
    Ich könnte zwei Abfragen daraus machen, aber man soll die Liste nach Autoren sortieren können. Damit muss die Angaben über den Autor in der selbem Abfrage laufen, sonst geht das ja nicht.
    Natürlich geht das. Die Art und Weise der Datenspeicherung hat keinen Einfluss auf die Funktionalität im Frontend. Allenfalls auf Performance und die Menge an Code, die zwischen Frontend und Datenspeicherung liegt.

    Kommentar


    • #3
      Perfekt - Das ist genau das, was ich gesucht habe!
      Vielen Dank mimomamu!

      Kommentar

      Lädt...
      X