我正在研究symfony2,我有一个实体Account和一个字段inscriptionDate类型datetime
我需要找回X天前的碑文号码,我有一些麻烦,现在我有:

    $qb = $this->_em->createQueryBuilder();
    $qb->select('COUNT(a.id)')
            ->from('MyProjectBundle:Account', 'a')
            ->where('a.inscriptionDate = DATE_SUB(NOW(), INTERVAL ?1 DAY) ')
            ->setParameters(array(1 => $daysAgo));
    return $qb->getQuery()->getSingleScalarResult();

我在CURDATE()上出错。我该怎么做?我需要计算NOW() - X days上的所有铭文,并且我不想在我的日期时间中使用hour-minute-second

最佳答案

您可以使用DATE_DIFF而不是date_sub来满足“x天前”这样的条件。
例如:

$qb = $this->_em->createQueryBuilder();
$qb->select('COUNT(a.id)')
   ->from('MyProjectBundle:Account', 'a')
   ->where('DATE_DIFF(CURRENT_DATE(), a.inscriptionDate) > ?1')
   ->setParameters(array(1 => $daysAgo));

return $qb->getQuery()->getSingleScalarResult();

关于php - X天前使用pgsql和主义获取数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25120291/

10-11 08:37