Doctrine 查询生成器:SQL 数组中的值
Doctrine Query Builder: Value in SQL array
我在一个实体(用户)中有一组实体(组),在我的查询生成器中我想做这样的事情:
$groups = $current_user->getGroups();
$usersQuery = $em->getRepository('AppBundle:Users')->createQueryBuilder('u');
foreach ($groups as $group) {
$usersQuery
->orWhere(':group_value in (u.groups)')
->setParameter('group_value', $group);
}
但是学说不喜欢。
还有另一种方法来检查值是否在 SQL 数组中吗?
谢谢。
在这些情况下使用 MEMBER OF
DQL 语句:
foreach ($groups as $group) {
$usersQuery
->orWhere(':group_value MEMBER OF u.groups')
->setParameter('group_value', $group);
}
我在一个实体(用户)中有一组实体(组),在我的查询生成器中我想做这样的事情:
$groups = $current_user->getGroups();
$usersQuery = $em->getRepository('AppBundle:Users')->createQueryBuilder('u');
foreach ($groups as $group) {
$usersQuery
->orWhere(':group_value in (u.groups)')
->setParameter('group_value', $group);
}
但是学说不喜欢。 还有另一种方法来检查值是否在 SQL 数组中吗?
谢谢。
在这些情况下使用 MEMBER OF
DQL 语句:
foreach ($groups as $group) {
$usersQuery
->orWhere(':group_value MEMBER OF u.groups')
->setParameter('group_value', $group);
}