powie.de Tech Forum

PHP und Webdesign => mySQL => Thema gestartet von: raiser am 13. Dezember 2005, 01:02:29

Titel: mysql rechnen lassen
Beitrag von: raiser am 13. Dezember 2005, 01:02:29
hiho
also ich abe 2 tabellen in der einen tabelle (user) stehen die userdaten drin,
in der anderen, welchen kategorien sie angehören (ukat).
in der user gibt es eine spalte ukat, diese ist gleich der ukat.id.
die user tabelle hat noch eine spalte, ep
jetz soll er mir alle ep´s zusammenzählen, die die selbe ukat haben
und diese dann ausgeben

mysql_query(\"SELECT SUM(ep) AS anz FROM user WHERE ukat=\'(SELECT id FROM ukat group by id)\'\")

 
hmmm, aber da gibt er mir alle user.ep zusammenaddiert aus.
oder sowas in der art. es kommt auf jeden nur eine zahl raus, die nicht sein darf
gruß raiserle
Titel: mysql rechnen lassen
Beitrag von: raiser am 13. Dezember 2005, 01:07:34
auch

mysql_query(\"SELECT SUM(ep) AS anz FROM user WHERE 
ukat=\'(SELECT id FROM ukat group by id)\' and ukat\'0\'\")

 
bring nichts.
da gibt er gar nichts aus
kann es sein, das er da nur ein resultat bringen kann und da ja
der subquerry mehrere id´s bringen würde, mind 2, kommt dort nichts?
Titel: mysql rechnen lassen
Beitrag von: d-day am 13. Dezember 2005, 10:27:18
Tach auch ....
warum selektierst Du denn auf die Tabelle ukat? Wenn ich richtig verstehe, willst Du doch nur nach ukat gruppieren, das geht doch auch über das ukat feld in der user Tabelle.
 

select sum(ep) from user group by ukat

 
oder wie?
Titel: mysql rechnen lassen
Beitrag von: dec am 13. Dezember 2005, 10:36:05
select sum(user.ep) as anz from user, ukat where user.ukatid = ukat.id
geschachtelt heisst ja meistens nichts anderes als ein join, oder irre ich mich...?
Titel: mysql rechnen lassen
Beitrag von: dec am 13. Dezember 2005, 10:37:08
/uploads/emoticons/icon_e_smile.gif.f7ec63a2b1c3d90a9415e40455642502.gif\" alt=\":-)\" /> d-day, stimmt...
wobei dann group by ukatid richtig wäre
Titel: mysql rechnen lassen
Beitrag von: raiser am 13. Dezember 2005, 11:45:04
jup super...
danke..... warum will ich das denn so kompliziert schreiben, wenn´s
auch einfacher geht...
hmpf

select sum(ep)  as anz from user where ukat0 group by ukat 

 
haut super hin thx
gruß raiserle