phpbar.de logo

Mailinglisten-Archive

er summiert nicht ...

er summiert nicht ...

Sebastian Mendel lists at sebastianmendel.de
Mon Apr 25 11:47:12 CEST 2005


Norbert Pfeiffer schrieb:
> Hallo,
> 
> keiner mehr zu hause ... <rumwink> ... ?
> 
> Habe jetzt eine einfachere Demonstration gebastelt:
> 
> CREATE TABLE gekauft (
>   ver_id   int(11) NOT NULL auto_increment,
>   usr_id   int(11) NOT NULL default '0',
>   gekauft  decimal(9,2) NOT NULL default '0.00',
>   PRIMARY KEY (ver_id)
> ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
> 
> INSERT INTO gekauft (usr_id, gekauft) VALUES
>  (33, 13.99),
>  (17,  7.99),
>  (27, 25.99),
>  (33, 11.99),
>  (17,  5.99),
>  (27, 25.99),
>  (17,  4.99),
>  (33, 15.11);
> 
> SELECT usr_id, gekauft FROM gekauft;

^^ wozu dient dieses erste Select?


> SET @summe=0;
> SET @zsumm=0;
>   SELECT usr_id AS Id,
>          COUNT(*) AS Anz,
>          @zsumm := SUM(gekauft) AS Cash,
>          @summe := @summe + @zsumm AS Saldo
>     FROM gekauft
> GROUP BY usr_id
> ORDER BY usr_id;
> 
> Das erzeugt diese Ausgabe:
> +----+-----+-------+-------+
> | Id | Anz | Cash  | Saldo |
> +----+-----+-------+-------+
> | 17 |   3 | 18.97 |     0 |
> | 27 |   2 | 51.98 |     0 |
> | 33 |   3 | 41.09 |     0 |
> +----+-----+-------+-------+
> 3 rows in set (0.00 sec)
> 
> Kann mir bitte jemand sagen:
> - wie ich dort einen brauchbaren Wert erzeugen kann ?

      SET @summe=0;
   SELECT usr_id AS Id,
          COUNT(*) AS Anz,
          SUM(gekauft) AS Cash,
          @summe := @summe + SUM(gekauft) AS Saldo
     FROM gekauft
 GROUP BY usr_id
 ORDER BY usr_id;

wo du allerdings wieder bei deinem vorrigen Problem landest ...


-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive