2009-05-22 13 views
0

テーブル値を使用して1つのクエリから2つの合計を取得し、それらをtogtherに追加できるかどうかを知りたいと思います。数量と値によるMYSQL SUM

ここにいくつかの単純なテーブル&のデータが役に立ちます。

CREATE TABLE `cartcontents` (
    `id` int(11) NOT NULL auto_increment, 
    `code` varchar(40) NOT NULL, 
    `qty` int(10) NOT NULL, 
    `price` decimal(30,2) NOT NULL, 
    `cart_id` int(11) NOT NULL, 
    PRIMARY KEY (`id`), 
    UNIQUE KEY `zone` (`zone_code`,`cart_id`) 
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=latin1; 

-- ---------------------------- 
-- Records 
-- ---------------------------- 
INSERT INTO `cartcontents` VALUES ('5', '011242077783866125432', '1', '36.00', '2'); 
INSERT INTO `cartcontents` VALUES ('4', '011242077793513596890', '3', '33.00', '4'); 
INSERT INTO `cartcontents` VALUES ('6', '011242077649557011493', '1', '110.00', '4'); 
INSERT INTO `cartcontents` VALUES ('7', '011242077724922511037', '1', '177.00', '5'); 

だから私は、与えられたcart_idの合計数量&合計値を収集できるようにしたいと思います。

これは、合計金額が3であれば、各ゾーンの金額が(qty * price)になる必要があり、合計でcart_idに加算する必要があることを意味します。

私はcart_id 4の値を探していたのであれば、上記の例では、私は私が戻ることを願っています値は数量= 4 &合計値になりますが= 209

希望することができますならば、これは感覚と感謝を作ります助けて。このような

答えて

3

何か作業をする必要があります:

SELECT SUM(qty) AS qty, SUM(qty * price) AS total 
FROM cartcontents 
GROUP BY cart_id 
+0

ファンタスティック。カントはそのような簡単なクエリを信じています! – Lee