Simple moving average mysql


Quando eu tive um problema semelhante, acabei usando tabelas temporárias por uma variedade de razões, mas isso tornou muito mais fácil o que eu fiz parece muito parecido com o que você está fazendo, tanto quanto o esquema vai. Faça do esquema algo como identidade ID, startdate, enddate, value. Quando você seleciona, faça uma subseqüência média dos 20 anteriores com base na identificação de identidade. Apenas faça isso se você já estiver usando tabelas temporárias por outros motivos (acesse as mesmas linhas uma e outra vez para métricas diferentes, por isso foi útil ter o pequeno conjunto de dados). Na minha experiência, Mysql a partir de 5.5.x tende a não usar índices de seleção dependente, seja uma subconsulta ou uma associação. Isso pode ter um impacto muito significativo no desempenho em que o critério de seleção dependente muda em cada linha. A média móvel é um exemplo de uma consulta que se enquadra nesta categoria. O tempo de execução pode aumentar com o quadrado das linhas. Para evitar isso, escolha um mecanismo de banco de dados que possa realizar pesquisas indexadas em opções dependentes. Acho que o Postgres funciona efetivamente para esse problema. Respondeu Jul 2 14 às 8:01 Sua resposta 2017 Stack Exchange, IncMySQL Forums. PHP. Criando uma média móvel simples com mySQL Criando uma média móvel simples com data mySQL: 14 de abril de 2007 02:01 PM Bom dia de pessoas, estou interessado em criar uma média móvel simples (SMA) usando apenas SQL. Um SMA é bastante fácil de calcular e está sendo usado para suavizar dados numéricos. Exemplo: o SMA de 5 dias para hoje seria a média dos últimos 5 dias. O SMA de amanhã é a média dos 5 dias anteriores. Para mais informações sobre SMA, consulte SAM. Agora - com certeza eu poderia usar PHPmySQL para pruduce tais valores de SMA, mas eu acho que usar apenas o SQL para esta tarefa será mais rápido (estou certo) e com certeza mais elegante, mas estou bastante fora de idéias como fazer isso desde o SMA, como Seu nome indica, move de valor para valor e calcula o SMA de acordo com seus valores consecutivos precedentes. O algoritmo funciona da seguinte maneira: 1. Se você, por exemplo, use o fator de 5 dias para suavizar, comece com a data que é 5 dias de distância da data mais antiga na tabela. 2. Crie a média desses últimos 5 dias. 3. armazene o valor calculado. 4. mude para o dia seguinte. 5. volte para o ponto número 2 ou pare se chegou ao final da tabela. Você poderia me dar uma dica sobre isso. Eu ficaria muito feliz em ouvir seus pensamentos sobre isso. Tome cuidado e mantenha o bom trabalho Dekers

Comments

Popular Posts