$action = $pdo->prepare("
CREATE TEMPORARY TABLE `temp` AS (SELECT * FROM `table` WHERE `id` = 1);
UPDATE `temp` SET id=NULL;
INSERT INTO `table` SELECT * FROM `temp`;
DROP TABLE `temp`;
SELECT LAST_INSERT_ID();
");
$action->execute();
echo $action->fetchColumn();
При таком запросе появляется ошибка: Call to undefined function fetchColumn();
Eсли убрать что-то одно из двух первых строк в запросе, то последний SELECT запрос проходит нормально и выводится результат.
Причем если выполнить такой запрос в phpmyadmin то нормально вернется результат последнего SELECT запроса.