Vinzenz Mai: nervig viele Subselects oder gibts doch ne Alternative? (mysql)

Beitrag lesen

Hallo,

Datenbank: mySQL

Version?

Was mich nervt ist, dass ich bei Subselects nur eine Spalte suchen kann!

Wieso? Natürlich kann man auch mehrere Spalten aus einem Subselect auswählen. Das ist überhaupt kein Problem.

Beispiel:

SELECT
   themen.name
   (SELECT name, datum, autor FROM beitraege WHERE thema_id = themen.id ORDER BY datum DESC LIMIT 1) AS beitrag_name, beitrag_datum, beitrag_autor

  
Das sieht nach einem völlig falschen Ansatz aus. Du suchst korrelierte Unterabfragen.  
  

> Mein Problem ist folgendes:  
> Ich habe ein Forum. Die Themen sind in der "themen"-Tabelle. Die Beiträge in "beitraege".  
>   
> Nun will ich in der Themenübersicht "name, datum, autor" des letzten Beitrags. JOIN's scheiden hier wohl aus.  
  
Nein. Vermutlich nicht. Eine korrelierte Unterabfrage plus ein INNER JOIN. Ich sehe kein Problem, das ist Standard.  
  
Nimm diesen [Archivbeitrag](/archiv/2006/7/t133015/#m861544) von mir. Er löst Dein Problem. Der einzige Unterschied: Statt einem Thema bekommst Du eine Themen-ID. Diese löst Du mit einem INNER JOIN zu Deiner themen-Tabelle auf.  
  
  
Freundliche Grüße  
  
Vinzenz