Mailinglisten-Archive |
Das klappt sicherlich deshalb nicht, weil die WHERE-Klausel so ziemlich das letzte ist, was abgearbeitet wird. Ich verstehe es so, dass du bereits die Summenbildung beeinflussen willst. Versuche es mal so oder so ähnlich: SELECT SUM( IF( kw BETWEEN 2 AND 8 , a1 , 0 ) ) , ... , SUM( IF( kw BETWEEN 2 AND 8 , a29 , 0 ) ) FROM fk_aktuell WHERE userID = '02sisi' ; Gunar > > Hallo _(at)_ll, > > ich möchte die Summen der Spalten auf einen Zeitraum begrenzen. Das > sieht so > > SELECT SUM(a1) , SUM(a2) , SUM(a3) , SUM(a4) , SUM(a5) , SUM(a6) , > SUM(a7) , SUM(a8) , SUM(a9) , SUM(a10) , SUM(a11) , SUM(a12) , > SUM(a13) , SUM(a14) , SUM(a15) , SUM(a16) , SUM(a17) , SUM(a18) , > SUM(a19) , SUM(a20) , SUM(a21) , SUM(a22) , SUM(a23) , SUM(a24) , > SUM(a25) , SUM(a26) , SUM(a27) , SUM(a28) , SUM(a29) FROM fk_aktuell > where userID = '02sisi' AND kw between '2' AND '8' > > bzw. > > SELECT SUM(a1) , SUM(a2) , SUM(a3) , SUM(a4) , SUM(a5) , SUM(a6) , > SUM(a7) , SUM(a8) , SUM(a9) , SUM(a10) , SUM(a11) , SUM(a12) , > SUM(a13) , SUM(a14) , SUM(a15) , SUM(a16) , SUM(a17) , SUM(a18) , > SUM(a19) , SUM(a20) , SUM(a21) , SUM(a22) , SUM(a23) , SUM(a24) , > SUM(a25) , SUM(a26) , SUM(a27) , SUM(a28) , SUM(a29) FROM fk_aktuell > where userID = '02sisi' AND kw>='2' AND kw<='8' > > aus. > > Leider klappt das nicht so ganz. Es gibt für den User '02sisi' nur > einen Eintrag mit kw=42. Es wird immer die Summe des Users ohne die > kw-Einschränkung ausgegeben. > > > Gruss Stefan > > ----------------------------------------------------------------- > OpenPGP DSA/ElGamal Key : ID 0x94FF6BE1 Fingerprint 9CC610BC E6A469F2 > 9DBA0F2D 30B8AF63 94FF6BE1 > http://www.keyserver.de:11371/pks/lookup?op=get&search=0x94FF6BE1 > ================================================================= > > --- > Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter > -->> http://www.4t2.com/mysql > > --- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive