У меня есть временная таблица с несколькими строками:
$query = "CREATE TEMPORARY TABLE {$tn} (
`id` int(11) NOT NULL AUTO_INCREMENT,
`type` varchar(255) NOT NULL,
`title` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB";
Я хотел бы выбрать каждую строку в этой таблице, обнулить идентификатор, обновить 'тип' (например) и вставить целую выбранную строку в другую таблицу (в которой есть те же столбцы, что и в этой таблице).
Я пробовал это, но я получаю сообщение об ошибке рядом с SET (у вас есть ошибка в вашем синтаксисе SQL; обратитесь к руководству, соответствующему вашей версии сервера MariaDB, чтобы узнать правильный синтаксис для использования рядом с 'SET)
foreach ($ids as $id) {//this is each id in temp table
$query = "INSERT INTO $another_table
SELECT * FROM {$tn} WHERE id='$id'
SET id=NULL, type='foo'";
$result = $conn->query($query) or die(mysqli_error($conn));
}