nur eine tabelle auszählen mysql
nur eine tabelle auszählen mysql
hi leute, ich habe ein tabellenfeld in mysql namens "was"
entweder ist der inhalt 1,2,3,4 oder 5 oder 0
ich will jetzt wissen wieviele einträge ich mit 2 habe oder mit 5 oder mit 0
wie geht das? das zählen dieser einträge?
entweder ist der inhalt 1,2,3,4 oder 5 oder 0
ich will jetzt wissen wieviele einträge ich mit 2 habe oder mit 5 oder mit 0
wie geht das? das zählen dieser einträge?
ja schon klar, aber jetzt will ich dass er folgendes macht
ZEIG MIR WIEVIELE EINTRÄGE DU GEFUNDEN HAST, BEI "WAS=2".

ZEIG MIR WIEVIELE EINTRÄGE DU GEFUNDEN HAST, BEI "WAS=2".

Zuletzt geändert von maribossa am 21.06.2003 14:16, insgesamt 1-mal geändert.
Code: Alles auswählen
$sql = "SELECT u.username, u.user_id, u.user_regdate, COUNT(p.pic_id) AS pics, MAX(p.pic_id) AS last_pic
FROM ". USERS_TABLE ." AS u, ". ALBUM_TABLE ." as p
WHERE u.user_id <> ". ANONYMOUS ."
AND u.user_id = p.pic_user_id
AND p.pic_cat_id = ". PERSONAL_GALLERY ."
GROUP BY user_id
ORDER BY $order_by";
so, die soll er alle auslesen, jetzt will ich folgendes noch einfügen
Code: Alles auswählen
COUNT(p.was) AS was
hehe, wie gehts das??????????????????


Versuchs mal so:
Code: Alles auswählen
$sql = "SELECT u.username, u.user_id, u.user_regdate, COUNT(p.pic_id) AS pics, MAX(p.pic_id) AS last_pic, COUNT(p2.was) as was
FROM ". USERS_TABLE ." AS u, ". ALBUM_TABLE ." as p
LEFT JOIN ". ALBUM_TABLE ." as p2 ON p2.was = 2
WHERE u.user_id <> ". ANONYMOUS ."
AND u.user_id = p.pic_user_id
AND p.pic_cat_id = ". PERSONAL_GALLERY ."
GROUP BY user_id
ORDER BY $order_by";
hmm versuchs mal so:
Wenns nicht klappt müsstest du es über ein extra query machen!
esperitox
Code: Alles auswählen
$sql = "SELECT u.username, u.user_id, u.user_regdate, COUNT(p.pic_id) AS pics, MAX(p.pic_id) AS last_pic, COUNT(p.was) as was
FROM ". USERS_TABLE ." AS u, ". ALBUM_TABLE ." as p
WHERE u.user_id <> ". ANONYMOUS ."
AND u.user_id = p.pic_user_id
AND p.pic_cat_id = ". PERSONAL_GALLERY ."
AND p.was = 2
GROUP BY user_id, p.was
ORDER BY $order_by";
esperitox
ja, genau so habe ich es ja auch gemacht, folgendes problem ist nur:
also, ohne die modifikation bekomme ich angezeigt, wer alles eine usergalerie hat und die zahl hinter dem namen verrät mir, wieviele bilder dieser benutzer in seiner galerie hat.
jetzt habe ich die tabelle um das feld "was" erweitert
1 = frau
2 = mann
...............usw bis 5
jetzt würde ich halt gerne rausfiltern können, (eigentlich unabhängig von der normalen funktion dieser php datei), wieviele bilder in der kategorie
1
2
3
4
5
forhanden sind.
mache ich es jetzt so, wie du beschrieben hast, bekomme ich zwar die richtige anzahl angezeigt (hinter dem user)
also beispielsweise:
user Brad hat 10 bilder in der galerie
durch deine sql abfrage steht dann halt
user Brad hat 5 bilder in der galerie (was ja auch richtig ist, 5 stück in der kategorie "was=2".)
ich möchte halt jetzt ............INSGESAMT gibt es xxxx Bilder in der Kategorie ..."was=...."...
hehe
Edit (itst): 670 kb großes Bild gelöscht.
also, ohne die modifikation bekomme ich angezeigt, wer alles eine usergalerie hat und die zahl hinter dem namen verrät mir, wieviele bilder dieser benutzer in seiner galerie hat.
jetzt habe ich die tabelle um das feld "was" erweitert
1 = frau
2 = mann
...............usw bis 5
jetzt würde ich halt gerne rausfiltern können, (eigentlich unabhängig von der normalen funktion dieser php datei), wieviele bilder in der kategorie
1
2
3
4
5
forhanden sind.
mache ich es jetzt so, wie du beschrieben hast, bekomme ich zwar die richtige anzahl angezeigt (hinter dem user)
also beispielsweise:
user Brad hat 10 bilder in der galerie
durch deine sql abfrage steht dann halt
user Brad hat 5 bilder in der galerie (was ja auch richtig ist, 5 stück in der kategorie "was=2".)
ich möchte halt jetzt ............INSGESAMT gibt es xxxx Bilder in der Kategorie ..."was=...."...
hehe

Edit (itst): 670 kb großes Bild gelöscht.
Das geht so nicht in einer einzigen Abfrage, da du bei der Abfrage nach Gesamt je einen Datensatz und bei der Abfrage nach den einzelnen Typen je 5 Datensätze pro User erhälst.
Code: Alles auswählen
$sql = "SELECT u.user_id, u.username, p.was, count(p.pic_id) AS anzahl
FROM " . USERS_TABLE . " u, " . ALBUM_TABLE . " p
WHERE u.user_id <> " . ANONYMOUS . "
u.user_id = p.pic_user_id
AND p.pic_cat_id = " . PERSONAL_GALLERY . "
GROUP BY u.user_id, p.was";
@pyramide, besten dank, werde gleich mal testen.
trotzdem noch eine frage
ALSO ICH PACK MEINE ABFRAGE JETZT EINFACH IRGENDWO ANDERS IN DIE PHP DATEI, unabhängig von den anderen abfragen.
so, in dem code ist ein fehler
ich möchte jetzt einfach AUSGESPUCKT BEKOMMEN WIEVIELE FOTOS DER GALERIE "was = 4" existieren.
ohne reihen oder so, einfach alles zusammengezählt summe sumarum!
wäre wirklich super wenn ihr nochmal helft! danke
trotzdem noch eine frage
ALSO ICH PACK MEINE ABFRAGE JETZT EINFACH IRGENDWO ANDERS IN DIE PHP DATEI, unabhängig von den anderen abfragen.
Code: Alles auswählen
//////////////////////////////77
$sql = "SELECT COUNT(was) AS total
FROM ". ALBUM_TABLE ."
WHERE was = 4 AND pic_cat_id = ". PERSONAL_GALLERY;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting total galleries', '', __LINE__, __FILE__, $sql);
}
if ( $total = $db->sql_fetchrow($result) )
{
$total_was = $total['total'];
}
$template->assign_vars(array(
'WAS' => $total_was,
)
);
//////////////////////////////77




ich möchte jetzt einfach AUSGESPUCKT BEKOMMEN WIEVIELE FOTOS DER GALERIE "was = 4" existieren.
ohne reihen oder so, einfach alles zusammengezählt summe sumarum!

wäre wirklich super wenn ihr nochmal helft! danke