如何从数据库获取行数组而不在 Symfony 中指定列

问题描述 投票:0回答:1

我想要拥有可以执行每个“SELECT”查询的存储库类
我输入的,来自外部的随机查询。
我不想指定我想从这个本机查询中获取的列。

通常,每个人都会使用此代码:

$sql = 'select column_one, column_two from table';

$rsm = new ResultSetMapping();
$rsm->addScalarResult('column_one', 'columnOne');
$rsm->addScalarResult('column_two', 'columnTwo');

$query = $this->getEntityManager()->createNativeQuery($sql, $rsm);
$result = $query->getResult();

但就我而言,我无法指定“column_one”或“column_two”,
因为sql查询和列会不同。
如果没有 $rsm->addScalarResult('column_one', 'columnOne') 我没有得到任何结果。

如何在不指定列的情况下获得结果

php sql symfony doctrine
1个回答
0
投票

来自@ADyson的评论


如果您不想配置预定义的结果集,那么您肯定应该像这里的示例一样进行操作:symfony.com/doc/current/doctrine.html#querying-with-sql?我认为 NativeQuery 不适合您,因为它依赖于将结果映射到已知实体的想法。如果您事先不知道查询是什么,那么您就无法进行该映射。

© www.soinside.com 2019 - 2024. All rights reserved.