向MySQL插入一个为每一行更改的变量

时间:2013-04-25 16:40:43

标签: php mysql

    while ($row = mysql_fetch_array($sqlquery)) 
        {

    $fd = strtotime($row['date1']);
    $sd = strtotime($row['date2']);


    $dates = floor(($sd - $fd ) / 86400);

    $price = $dates * 25;
   }

我想为每一行插入另一个表$price。我不能通过单个插入执行此操作,因为$price每次都不同。

2 个答案:

答案 0 :(得分:2)

"INSERT INTO `yourtable` ('price') VALUES ('".$price."')";

把它放在while循环中,所以

while ($row = mysql_fetch_array($sqlquery)) 
        {

    $fd = strtotime($row['date1']);
    $sd = strtotime($row['date2']);


    $dates = floor(($sd - $fd ) / 86400);

    $price = $dates * 25;
"INSERT INTO `yourtable` ('price') VALUES ('".$price."')";
   }

这意味着while循环的每次迭代都会有一个插入,每次$price都不同。

答案 1 :(得分:1)

要一次插入所有行,您可以执行以下操作:

INSERT INTO Other_Table (price)
  SELECT 25 * (date2 - date1) / 86400
  FROM ... (table from $sqlquery)
  WHERE ... (where clause from $sqlquery)