Bestimmte Felder in der Datenbank zusammenzählen und ausgeben

Bestimmte Felder in der Datenbank zusammenzählen und ausgeben

am 07.01.2008 15:58:51 von Vanesa Schrankman

Ich möchte gerne die Werte der Spalte count die in der Tabelle
promo_datenbank_artikel zusammenzählen und Ausgaben, wenn diese eine
bestimmte artikel id hat.




SELECT id, count
FROM promo_datenbank_artikel
WHERE artikel_id =104
LIMIT 0 , 30


Meine Abfrage ermittelt zwar die 5 Zeilen richtig, aber ich schaffe es nicht
die die Spalte count zusammenzuzählen.

Für einen Tipp wäre ich sehr dankbar

Vanesa


CREATE TABLE `promo_datenbank` (
`id` int(11) NOT NULL auto_increment,
`aktiv` int(11) NOT NULL default '1',
`titel` varchar(100) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
AUTO_INCREMENT=11 ;


INSERT INTO `promo_datenbank` VALUES (1, 1, 'ebay');
INSERT INTO `promo_datenbank` VALUES (2, 1, 'quelle');
INSERT INTO `promo_datenbank` VALUES (3, 1, Clipfish');
INSERT INTO `promo_datenbank` VALUES (4, 1, 'Neckermann');
INSERT INTO `promo_datenbank` VALUES (5, 1, 'Beate Uhse');
INSERT INTO `promo_datenbank` VALUES (6, 1, 'Weinkauf GmbH');
INSERT INTO `promo_datenbank` VALUES (7, 1, 'Samlungen und co');
INSERT INTO `promo_datenbank` VALUES (8, 1, 'IHK');
INSERT INTO `promo_datenbank` VALUES (9, 1, 'Link gibt es nicht');
INSERT INTO `promo_datenbank` VALUES (10, 1, 'Sexshops');

---------------------------------------------------------

CREATE TABLE `promo_datenbank_artikel` (
`id` int(11) NOT NULL auto_increment,
`artikel_id` int(11) NOT NULL,
`promo_id` int(11) NOT NULL,
`count` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
AUTO_INCREMENT=56 ;


INSERT INTO `promo_datenbank_artikel` VALUES (48, 104, 3, 4);
INSERT INTO `promo_datenbank_artikel` VALUES (47, 104, 4, 1);
INSERT INTO `promo_datenbank_artikel` VALUES (46, 104, 8, 1);
INSERT INTO `promo_datenbank_artikel` VALUES (45, 104, 10, 4);
INSERT INTO `promo_datenbank_artikel` VALUES (44, 104, 1, 1);
INSERT INTO `promo_datenbank_artikel` VALUES (39, 103, 6, 0);
INSERT INTO `promo_datenbank_artikel` VALUES (50, 105, 4, 2);

Re: Bestimmte Felder in der Datenbank zusammenzählenund ausgeben

am 07.01.2008 17:03:01 von Boris Stumm

Vanesa Schrankman wrote:

> Ich möchte gerne die Werte der Spalte count die in der Tabelle
> promo_datenbank_artikel zusammenzählen und Ausgaben, wenn diese eine
> bestimmte artikel id hat.
>
> SELECT id, count
> FROM promo_datenbank_artikel
> WHERE artikel_id =104
[...]

select id, sum("count")
from promo_datenbank_artikel
where artikel_id = 104

Ich empfehle dringend, dass du dir mal ein paar Tutorials zu
SQL, GROUP BY und Aggregatfunktionen anschaust.