Hallo Moritz,
steht MySQL 4.1 oder höher zur Verfügung? Dann könntest Du das mit einem Subselect machen.
Code:SELECT `text_id`, `text`, (SELECT COUNT(`kommentar_id`) FROM `Kommentare` WHERE `text_id` = `Texte`.`text_id`) as anzahl FROM `Texte`
Hallo!
ich habe folgende zwei Tabellen in einer MySQL-DB (vereinfacht zum besseren Verständnis):
Nun möchte ich gerne neben dem Text der Tabelle Text auch ausgeben, wie viele Kommentare es zu ebendiesem Text gibt.Code:Tabelle 1: Texte text_id | text Tabelle 2: Kommentare kommentar_id | kommtentar | text_id
Gedacht habe ich mir das folgendermaßen:
Leider erhalte ich so nur genau die Texte, zu denen es auch Kommentare gibt - was wenig sinnvoll ist. Ich habe es auch schon mit "LEFT OUTER JOIN" probiert, der ja eigentlich mit NULL auffüllen sollte, wenn es keine Entsprechungen in der Kommentar-Tabelle gibt. Leider gibt auch diese Version nur die Texte mit Kommentaren zurück.Code:SELECT tx_mmfrageantwort_threads.thread_text, count(tx_mmfrageantwort_comments.uid) AS anz FROM tx_mmfrageantwort_threads LEFT JOIN tx_mmfrageantwort_comments ON tx_mmfrageantwort_comments.thread_id WHERE tx_mmfrageantwort_threads.uid = tx_mmfrageantwort_comments.thread_id GROUP BY tx_mmfrageantwort_threads.uid
Wisst Ihr Rat? Liegt es an MySQL?
Vielen Dank.
...zur Zeit außer Betrieb...
Hallo Moritz,
steht MySQL 4.1 oder höher zur Verfügung? Dann könntest Du das mit einem Subselect machen.
Code:SELECT `text_id`, `text`, (SELECT COUNT(`kommentar_id`) FROM `Kommentare` WHERE `text_id` = `Texte`.`text_id`) as anzahl FROM `Texte`
#.Viele Grüße - Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
PHP Tutorials und kostenlose Scripts gibt's bei phpBuddy.eu
Follow phpBuddy on Twitter
LTFB - anfängerfreundliche Tutorials
.
Ja, steht zur Verfügung. Was mich allerdings wundert, ist, dass meine Abfrage nur die Einträge zu Tage fördert, die auch Kommentare enthalten.
Merkwürdig merkwürdig.
Trotzdem vielen Dank für deine Antwort - ich machs dann einfach so...
...zur Zeit außer Betrieb...
ich mein es liegt an Deiner ON-Anweisung
btw - da das offensichtlich TYPO3 ist, hast Du doch die Anzahl der Referenzen in der Haupttabelle stehen, benötigst also kein countCode:SELECT t.thread_text, count(c.uid) AS anz FROM tx_mmfrageantwort_threads t LEFT JOIN tx_mmfrageantwort_comments c ON t.uid = c.thread_id GROUP BY t.uid
TYPO3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)