我有桌子问题。问题属于questioncategory:
问题:
----------------------------
| id | questioncategory_id |
----------------------------
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 2 |
| 6 | 1 |
----------------------------
我想用QueryBuilder或DQL构建一个查询,以检索每个questioncategory的随机行。问题类别存储在数组($ ids)中。
当前查询(返回每个类别的第一个问题):
$query = $repository->createQueryBuilder('p')
->where('p.questioncategory IN (:questionCat)')
->groupBy('p.questioncategory')
->setParameter('questionCat', $ids)
->getQuery();
有什么想法吗?我知道如何为所有问题检索随机行,它描述为here。我必须为每个类别检索随机行,因此我必须以某种方式计算每个类别的问题数量,然后为该类别选择随机行。