Buscar Registos com intervalo de data mesmo não tendo informação Mysql

23/10/2019

7

Boa tarde

Estou com muitas dificuldades em desenvolver um relatório.
Vamos la, tenho uma tabela de vendas na qual é apenas preenchida quando existe alguma venda

23-10-2019 - 2
20-10-2019 - 4
19-10-2019 - 10
15-10-2019 - 1
14-10-2019 - 5

O que eu pretendo é ter um array com todos os dias independente se teve ou não registos naquele dia, Exemplo:

23-10-2019 - 2
22-10-2019 - 0
21-10-2019 - 0
20-10-2019 - 4

Essa regra vale para intervalo de meses também

Janeiro - 0
Fevereiro - 1

Estou a utilizar laravel como framework e Query Builder para as queries

Existe alguma função no Mysql para resolver esse meu problema?

Cumprimentos
Gustavo Diniz

Gustavo Diniz

Responder

Posts

24/10/2019

Emerson Nascimento

você pode criar stored procedure ou function?
Responder

24/10/2019

Emerson Nascimento

você pode criar stored procedure ou function?


Sim posso, entretanto ja consegui uma solução

$period = Carbon::parse($start)->range($end, 1, 'Month');
foreach($period as $date)
{
     $datas[$date->format('M Y')]    =   $vendasMensais->where('mes', $date->format('m'))->first()->data ?? 0;
}


Solução em laravel com livraria Carbon
Sem a necessidade de manipulação com Mysql
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários,
consulte nossa política de privacidade.

Aceitar