计算与工资期相关的工资周行数

Count rows of payroll week that relate to a payroll period

我想计算预填充的工资周开始日期和结束日期与输入的工资周开始日期和结束日期相匹配的行数。

我目前拥有的:

return $this->_em ->createQuery(' SELECT pw FROM comtwclagripayrollBundle:Payrollweek pw WHERE pw.startdate = :startdate AND pw.enddate <= :enddate ')
            ->setParameter('startdate', $startdate)
            ->setParameter('enddate', $enddate)
            ->getResult();

在您的查询中添加 COUNT 并用大于或等于比较替换第一个日期的相等性。

请注意,您可以使用 BETWEEN 代替这种双重比较。

return $this->_em ->createQueryBuilder()
            ->select('COUNT(pw)')
            ->from('comtwclagripayrollBundle:Payrollweek', 'pw')
            ->where('pw.startdate >= :startdate AND pw.enddate <= :enddate ')
            ->setParameter('startdate', $startdate)
            ->setParameter('enddate', $enddate)
            ->getQuery()
            ->getOneOrNullResult();