Newer
Older
<?php
use App\Entity\Sale;
use Doctrine\ORM\EntityManagerInterface;
private EntityManagerInterface $entityManager;
public function __construct(EntityManagerInterface $entityManager)
$this->entityManager = $entityManager;
firdaous elhalafi
a validé
$emConfig = $this->entityManager->getConfiguration();
$emConfig->addCustomDatetimeFunction('YEAR', 'DoctrineExtensions\Query\Mysql\Year');
$emConfig->addCustomDatetimeFunction('MONTH', 'DoctrineExtensions\Query\Mysql\Month');
$emConfig->addCustomDatetimeFunction('DAY', 'DoctrineExtensions\Query\Mysql\Day');
firdaous elhalafi
a validé
public function getMonthlyAveragePriceEvolution(): array
$queryBuilder = $this->entityManager->createQueryBuilder();
firdaous elhalafi
a validé
->select("MONTH(s.date) as month, YEAR(s.date) as year, AVG(s.amount / s.surface) as average_price")
->from(Sale::class, 's')
->groupBy('year, month')
->orderBy('year, month')
->getQuery()
->getResult();
firdaous elhalafi
a validé
echo "==========================";