Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Tabellen sortieren [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Tabellen sortieren


 
Frashier
09-09-2008, 15:19 
 
Ich habe zwei Tabellen, "news" und "comments". nun möchte ich eine Übersicht wo ich nach der neusten News bzw neusten kommentierten News sortiere. Das funktioniert mit der Abfragelösung unten ganz prima.

Nun möchte ich aber noch "user_name" auslesen, was aber nicht passt. Mir wird dabei entweder der Name von "news", wenn noch kein Kommentar vorhanden ist ausgeben (soll ja so sein) und wenn Kommentare (also mehrere) vorhanden sind dann wird immer der Name des ersten Kommentars ausgegeben, wobei es in diesem fall der Letzte sein muss.

Jemand einen Tip wie ich das clever löse, ich bin mit meinem Latain am Ende.


Tabelle news:
id | text | datetime | user_name

Tabelle comments:
id | text | datetime | news_id | user_name

SELECT
news.content,
IF(comment.id IS NULL, news.datetime, max(comment.datetime)) AS Datum,
IF(comment.id IS NULL, news.user_name, comment.user_name) as displayname,
comment.content,
FROM news
LEFT JOIN comment ON news.id = comment.news_id
GROUP BY news.id
ORDER BY Datum DESC

 
TobiaZ
09-09-2008, 18:07 
 
Nen einfacher Subselect sollte dein Problem lösen.

 
Frashier
12-09-2008, 16:41 
 
bekomme ich nicht hin, kann mir da mal jemand bitte unter die arme greifen?


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:12 Uhr.