我有一个联合查询:
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('d')
->leftJoin('MovementDetail', 'stockmovementdetail', 'WITH', 'stockmovementdetail.movementId = d.id')
现在如何达到“运动细节”?
我有一个联合查询:
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('d')
->leftJoin('MovementDetail', 'stockmovementdetail', 'WITH', 'stockmovementdetail.movementId = d.id')
现在如何达到“运动细节”?
由于您的问题非常模糊,我将笼统地回答。如果您需要更具体的信息,请提供更具体的信息。
假设运动标题有一个链接到运动细节实体的字段(我们称之为运动细节)。您可以执行以下操作:
$query = $this
->getEm()
->getRepository("MovementHeader")
->createQueryBuilder('mh')
->select('mh','md')
->innerJoin('mh.movementDetail','md')
->where(/* Now in the where cause,
you can select what ever
you want from mh or md*/)
->setParameters(array(/* ... */))
以下是您可以使用的一些示例:
->where('mh.id = :id') //Could used when you want to retrieve a specific header
->where('md.field IN (:list)') // Where you want to retrive all the mh
// (and their md) that contains the fields
你也可以像这样做多个条件
->where('mh.field = :value AND md.otherField = :value2')
然后,您必须相应地设置参数。
获得结果后,您可以使用普通的 getter 和 setter 访问字段。