下面是一个示例的SQL代码,用于按ID对多行进行求和:
CREATE PROCEDURE sum_by_id()
BEGIN
-- 创建一个临时表用于存储每个ID的求和结果
CREATE TEMPORARY TABLE temp_sum (
id INT,
total INT
);
-- 对ID进行分组,并计算每个ID的求和结果
INSERT INTO temp_sum
SELECT id, SUM(value) AS total
FROM your_table
GROUP BY id;
-- 查询临时表中的结果
SELECT * FROM temp_sum;
-- 删除临时表
DROP TEMPORARY TABLE IF EXISTS temp_sum;
END
上面的代码创建了一个存储过程 sum_by_id()
,它首先创建一个临时表 temp_sum
用于存储每个ID的求和结果。然后,使用 INSERT INTO
语句将计算得到的求和结果插入到临时表中。最后,使用 SELECT
语句查询临时表中的结果,并使用 DROP TEMPORARY TABLE
语句删除临时表。
你可以根据你的实际需求修改表名、列名以及求和的条件。