【发布时间】:2017-08-18 20:40:57
【问题描述】:
我在将 sql 转换为 dql 时遇到问题。当用户在活动表中时,我试图实现这一点,他们不应该能够编辑非活动状态,但状态位于另一个表中。
SQL
SELECT Activity1.Payrollperiodid, PayrollPeriod.state
FROM Activity1
INNER JOIN PayrollPeriod ON Activity1.payrollperiodid = Payrollperiod.payrollperiodid
where PayrollPeriod.state=1;
DQL
public function findBytransid($payrollperiodid)
{
$repository=$this->getEntityManager()->getRepository('comtwclagripayrollBundle:Activity');
$qb = $repository->createQueryBuilder('a');
$qb->select('a');
$qb->innerJoin('a.payrollperiodid', 'p');
$qb->where('a.payrollperiodid=:payrollperiodid and a.status=:1');
$qb->setParameter('payrollperiodid', $payrollperiodid);
$qb->setParameter('status', 1);
return $results = $qb->getQuery()->getResult();
【问题讨论】:
-
将
:1更改为:status
标签: sql-server symfony dql