(PHP,SQL)当使用Insert Into .. Select语句时,我得到两次相同的行

问题描述:

I want to take some data from Tovar_Dosky into Filter1 where value of column "cena" is less or equal to 50. In table Filter1 I gethave only 1 row. But I get that row twice. Any help ? Code:

 $sql= "INSERT INTO Filter1(meno, znacka, cena, op, format) 
       SELECT meno, znacka, cena, op, format 
       FROM Tovar_Dosky WHERE cena<=50";
       $result=$conn->query($sql);
        if (!($conn->query($sql) === TRUE)) {
        echo "Error: " .$conn->error;
        }

I get no errors from sql.

Yes, Its obvious you are executing the query twice ... Better change your query to below ...

$sql= "INSERT INTO Filter1(meno, znacka, cena, op, format) 
   SELECT meno, znacka, cena, op, format 
   FROM Tovar_Dosky WHERE cena<=50";
    if ($result=$conn->query($sql)) {
     //Do what you want with the $result
    }
    else{
     echo "Error: " .$conn->error;
    }