除法得到结果 w=10=sh arai
DQL getResult return array
我正在玩 Doctrine,我想我可能错过了一些东西。
所以我有一些关系的 table,这里是列:
编号 | user_id | workshop_id
基本上,我使用这个 table 来知道用户正在注册研讨会。
我想统计有多少用户订阅了一个研讨会。
所以在我的存储库中,我使用 DQL 请求:
/** @var EntityManager $entityManager */
$entityManager = $this->getEntityManager();
$query = $entityManager->createQuery("
SELECT COUNT('uw.id')
FROM App\Entity\UserWorkshops AS uw
LEFT JOIN App\Entity\User AS u WITH u.userId = uw.user
WHERE uw.workshop = :workshop_id");
$count = $query
->setParameters(['workshop_id' => $workshopId])
->getResult();
这里是结果示例:
我只需要检索整数 3。
我怎样才能 return 一些不同的东西?
谢谢
您可以使用文档中的 getSingleScalarResult:
Query#getSingleScalarResult(): Retrieves a single scalar value from
the result returned by the dbms. If the result contains more than a
single scalar value, an exception is thrown. The pure/mixed
distinction does not apply.
例如:
$count = $query
->setParameters(['workshop_id' => $workshopId])
->getSingleScalarResult();
我正在玩 Doctrine,我想我可能错过了一些东西。 所以我有一些关系的 table,这里是列:
编号 | user_id | workshop_id
基本上,我使用这个 table 来知道用户正在注册研讨会。
我想统计有多少用户订阅了一个研讨会。
所以在我的存储库中,我使用 DQL 请求:
/** @var EntityManager $entityManager */
$entityManager = $this->getEntityManager();
$query = $entityManager->createQuery("
SELECT COUNT('uw.id')
FROM App\Entity\UserWorkshops AS uw
LEFT JOIN App\Entity\User AS u WITH u.userId = uw.user
WHERE uw.workshop = :workshop_id");
$count = $query
->setParameters(['workshop_id' => $workshopId])
->getResult();
这里是结果示例:
我只需要检索整数 3。
我怎样才能 return 一些不同的东西?
谢谢
您可以使用文档中的 getSingleScalarResult:
Query#getSingleScalarResult(): Retrieves a single scalar value from the result returned by the dbms. If the result contains more than a single scalar value, an exception is thrown. The pure/mixed distinction does not apply.
例如:
$count = $query
->setParameters(['workshop_id' => $workshopId])
->getSingleScalarResult();