Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Duda calendario maestro y relación con otras tablas

Hola, tengo una duda , que paso a detallar:

Yo creo un calendario maestro de la siguiente manera:

let vMin  = num(MakeDate(2014,09,09));

let vMax = num(today());

       Calendario:

       load

       date(IterNo() + $(vMin)-1) as fecha

       AutoGenerate 1 while IterNo() + $(vMin) -1 <= $(vMax);

    

       CalendarioMaestro:

       load

        fecha, year(fecha) as año, Num(Month(fecha)) as mes, Day(fecha) as dia, Week(fecha) as NumeroSemana,

       1 as contadorDias

       resident Calendario  ORDER BY fecha ASC;

    

       drop table Calendario;

    

Y luego genero una tabla de la siguiente manera:

TablaEjemplo:

        select ID,count(*) as total,date_format(fecha,'%Y-%m-%d') as fecha

        from tabla

        where ID is not null

        group by ID,date_format(fecha,'%Y-%m-%d');

En TablaEjemplo, tengo diferentes ID,  cada ID puede tener ventas en diferentes días (diferentes fechas). Es decir, en tabla para un determinado ID no tiene porque estar todas las fechas. Yo debo calcular la media en un periodo de tiempo

Pongo un ejemplo, febrero tiene 28 días, pero yo en tabla no tengo los dias 15,16, 24,28, para un ID concreto. Para yo calcular la media de dicho ID siguen siendo 28 días aunque me falten esos 4 días. Yo dispongo de 3 selectores uno para dia otro para mes y otro para año. Si para un determinado ID falta como en el ejemplo los días 15,16,24,28, en el selector de dia no me lo dejara seleccionar. Pero a la hora de hacer la media, si necesito que me compute esos dias

   Yo hago un count(distinct fecha) o un count (contadorDias) en ambos caso me daría 24 días, pero yo necesito que me de los 28 del mes completo

Un saludo

10 Replies
PASTORGAA
Contributor II
Contributor II

Muchas gracias.

Funciona a la perfección.

Saludos