在MYSQL中,输入所有值

时间:2013-06-18 17:16:33

标签: php mysql

我有一个名为'articulo'的表和名为CostoPromedio的列,我想通过id来汇总此列,我从PHP获取此ID,我在查询中插入这些ID:

INSERT INTO dbName.venta (tMoneda,idTipoDeDocumento,total) VALUES(11,32,(SELECT SUM(CostoPromedio) FROM dbName.articulo WHERE idArticulo IN (15, 16,15,17,16))

问题是添加15,16,17,但在重复的ID中没有添加结果,只是忽略了他,我想要添加所有内容,包括if是否是相同的ID。

抱歉我的英语,不是我的母语

2 个答案:

答案 0 :(得分:3)

您需要使用INSERT INTO ..SELECT...FROM作为查询:

INSERT INTO dbName.venta (tMoneda,idTipoDeDocumento,total) 
SELECT 11, 32, SUM(CostoPromedio) 
FROM dbName.articulo
WHERE idArticulo IN (15, 16, 17)

答案 1 :(得分:0)

我觉得你最后错过了一个支架。并删除“IN”子句中的重复项。

INSERT INTO dbName.venta (tMoneda,idTipoDeDocumento,total) 
VALUES(11,32,(SELECT SUM(CostoPromedio) 
              FROM dbName.articulo 
              WHERE idArticulo IN (15,16,17)));