2015-11-06 79 views
0

我需要知道如何在一個查詢中插入多行插入SUM。SUM在一個查詢中插入多行

我需要將表中已有的值與發票中的新值相加。

這裏是我的查詢(MySQL的):

 $conn->beginTransaction(); 
     $sql = "INSERT INTO PRODUCTOS 
     (cod, nombreProd, proveedor, existencia, comprado, compra, id_user, nombre, ref_compra, f_compra) 
     VALUES "; 
     $insertQuery = array(); 
     $insertData = array(); 
     foreach ($_POST['cod'] as $i => $cod) { 
      $insertQuery[] = '(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'; 
      $insertData[] = $_POST['cod'][$i]; 
      $insertData[] = $_POST['nombreProd'][$i]; 
      $insertData[] = $_POST['proveedor'][$i]; 
      $insertData[] = $_POST['existencia'][$i]; 
      $insertData[] = $_POST['comprado'][$i]; 
      $insertData[] = $_POST['compra1'][$i]; 
      $insertData[] = $_POST['id_user']; 
      $insertData[] = $_POST['nombre']; 
      $insertData[] = $_POST['ref_compra']; 
      $insertData[] = $_POST['fecha']; 
     } 
     if (!empty($insertQuery)) { 
      $sql .= implode(', ', $insertQuery); 
      $stmt = $conn->prepare($sql); 
      $stmt->execute($insertData); 
     } 
     $conn->commit(); 

我需要總結該行是 「existencia」 與 「comprado」 新的數據,如每例如:

如果DB 「existencia」有100個項目,並在新發票中購買50行更多的項目「comprado」我怎麼總結existencia第一,他們總結結果與「comprado」 值?以節省新的總額在「existencia」

最好的問候!

+0

您發佈的查詢是否有效? – jason

+0

是的,是我用來保存新發票的實際查詢,現在我需要在列表視圖中顯示每個項目的實際存在 – user3236149

+0

因此,您希望將單個插入到'PRODUCTOS'中以顯示由''existencia'增加「comprado」的數量? – jason

回答

1

嘗試改變

$insertData[] = $_POST['existencia'][$i]; 

$insertData[] = ($_POST['existencia'][$i] + $_POST['comprado'][$i]); 

如果它們被顯示爲字符串使用intval功能。