mysql - 错字3流: "Result could not be converted to string" - get field content of query result

标签 mysql doctrine-orm flow-framework

早上好,

我的存储库如下所示:

public function findbyBeitrag($BS) {

    $query = $this->createQuery();
    $query->matching(
        $query->equals('name', $BS)
        );
    return $query->execute();
}

我的 Controller 看起来像这样:

public function findbyBeitragAction() {
     $BS = '1';
     $ergebnis = $this->beitragssatzRepository->findByBeitrag($BS);
     return . $ergebnis . '!';
}

数据库看起来像这样:

     name     beitragssatz
     1        15,00
     2        30,00
     3        40,00

作为查询结果,我想得到“15,00”。我必须向存储库中的函数添加什么才能仅获得 15,00 作为查询结果? 我收到错误消息“结果无法转换为字符串”。

非常感谢。

最佳答案

在存储库中注入(inject) Doctrine 的实体管理器:

/** * @Flow\Inject * @var \Doctrine\Common\Persistence\ObjectManager */ 
protected $entityManager; 

然后使用以下内容:

$query = $this->entityManager->createQuery("SELECT beitragssatz.beitragssatz FROM \itoop\atc\Domain\Model\Beitragssatz beitragssatz WHERE beitragssatz.name = '1'"); 

我得到了一个数组输出。然后用

$query->getSingleScalarResult(); 

关于mysql - 错字3流: "Result could not be converted to string" - get field content of query result,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29249102/

相关文章:

doctrine-orm - 教义 : Sub-query where main entity id is in array of sub-query

symfony - 向实体注入(inject)参数

flow-framework - Neos Flow 项目的正确 .gitignore 文件?

php - 如何为mysql创建DROP INDEX IF EXISTS?

mysql - 我可以对 MySQL 表使用非数字主键吗?

Mysql Select Before Time on date 指定日期

mysql - 在 Phpmyadmin 中重命名 InnoDB 列

MySQL - 存储大于 1 且有大量小数位的数字

PHP If 语句在 MySQL boolean 列返回上返回 false