Mysql Symfony在查询中传递自定义sql参数
我试图将表名和列名从字符串传递到sql查询,但由于某些原因,它不起作用 这是我试图从symfony 4.4文档中执行的一个示例: 这就是我试图做到的:Mysql Symfony在查询中传递自定义sql参数,mysql,doctrine-orm,doctrine,Mysql,Doctrine Orm,Doctrine,我试图将表名和列名从字符串传递到sql查询,但由于某些原因,它不起作用 这是我试图从symfony 4.4文档中执行的一个示例: 这就是我试图做到的: $sql = "SELECT :col, COUNT(*) AS `cnt` FROM :tab GROUP BY :col "; $
$sql = "SELECT
:col,
COUNT(*) AS `cnt`
FROM
:tab
GROUP BY
:col
";
$stmt = $conn->prepare($sql);
$stmt->execute([ 'col' => $col , 'tab' => $tab ]);
return $stmt->fetchAllAssociative();
输出:
同时,它的工作原理如下:
$sql = "SELECT
typeCl,
COUNT(*) AS `cnt`
FROM
client
GROUP BY
typeCl
";
$stmt = $conn->prepare($sql);
$stmt->execute([ 'col' => $col , 'tab' => $tab ]);
return $stmt->fetchAllAssociative();
我仍然希望我的表和列可以参数化。。有没有办法做到这一点??
(这与我使用dump和die的字符串值无关,请确保没有错误的符号)这就是我如何使其工作的:
$sql = "SELECT ".$col.",
COUNT(*) AS `cnt`
FROM
".$tab."
GROUP BY
".$col."
";
$stmt = $conn->prepare($sql);
$stmt->execute([ 'col' => $col , 'tab' => $tab ]);
return $stmt->fetchAllAssociative();