Mailinglisten-Archive |
> SELECT pixn.id, COUNT( pixn_bilder.pixnid ) AS anzahl, MIN( pixn_bilder.thumbURL ) AS erstesbild, count( meinung_pixn.meinungsid ) AS anzahlposts
> FROM pixn
> LEFT JOIN pixn_bilder ON pixn.id = pixn_bilder.pixnid
> LEFT JOIN meinung_pixn ON pixn_bilder.id + 60000 = meinung_pixn.forumid
> WHERE pixn.id = 438
> GROUP BY pixn.id
>
> wenn ich das mach, steht im recordset für den wert mit der pixn.id 438:
>
> id anzahl erstesbild anzahlposts
> 438 127 p_370_1103180456_th.jpg 94
>
> nimm ich den sql:
> (also die oben mit LEFT JOIN verknüpfte tabelle)
>
> SELECT count( pixnid ) AS anzahl
> FROM `pixn_bilder`
> WHERE pixnid = 438
>
> bekomm ich:
>
> anzahl
> 42
>
>
> also einmal anzahl = 127 und einmal anzahl = 42...
pobiers mal mit DISTINCT im COUNT()
... so auf gut Glück, ohne deine Struktur zu kennen:
SELECT pixn.id,
COUNT( DISTINCT pixn_bilder.id ) AS anzahl,
MIN( pixn_bilder.thumbURL ) AS erstesbild,
COUNT( DISTINCT meinung_pixn.meinungsid ) AS anzahlposts
FROM pixn
LEFT JOIN pixn_bilder
ON pixn.id = pixn_bilder.pixnid
LEFT JOIN meinung_pixn
ON pixn_bilder.id + 60000 = meinung_pixn.forumid
WHERE pixn.id = 438
GROUP BY pixn.id
--
Sebastian Mendel (www.sebastianmendel.de)
*www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive