Jump to content
José Roberto Scarmagnani

Consulta ocorrências sequenciais

Recommended Posts

Bom dia pessoal !

 

Tenho a seguinte tabela:

-------------------------------------------------------------------------------

|Numero   | Nome     | Data               |  Ocorrencia |

________________________________________________

| 00010     | Joao      | 20/10/2019   | 15                 |

| 00023     | Joao      | 21/10/2019   | 15                 |

| 00044     | Joao      | 22/10/2019   | 15                 |

| 00057     | Joao      | 23/10/2019   | 23                 |

| 00058     | Joao      | 26/10/2019   | 15                 |

| 00067     | Joao      |  27/10/2019  | 15                 |

| 00089     | Paulo     | 01/10/2019   | 10                 |

________________________________________________

 

Preciso de uma consulta que me retorne quantas vezes houve a mesma ocorrência sequencialmente, informando o dia da primeira ocorrência e quantas vezes se repetiu ou então que dia iniciou e que dia terminou a mesma ocorrência em data sequencial, assim:

 

___________________________________________

| Nome    | Dia_Inicio       | Qtd   | Ocorrencia |

___________________________________________

| Joao      | 20/10/2019   | 03     |  15               |

| Joao      | 23/10/2019   | 01     |  23               |

| Joao      | 26/10/2019   | 02     |  15               |

| Paulo     | 01/10/2019   | 01     |  10               |

____________________________________________

 

Ou assim

_____________________________________________________

| Nome     | Dia_Inicio       | Dia _Final         | Ocorrencia |

_____________________________________________________

| Joao       | 20/10/2019   | 22/10/2019    | 15                 |

| Joao       | 23/10/2019   | 23/10/2019    | 23                 |

| Joao       | 26/10/2019   | 27/10/2019    | 15                 |

| Paulo      | 01/10/2019   | 01/10/2019    | 10                 |

_____________________________________________________

 

Em minhas tentativas consegui somar a mesma ocorrência para o mesmo nome, mas não separa por data sequencial.

 

Alguem poderia me auxiliar nessa consulta?

 

Obrigado

Edited by José Roberto Scarmagnani

Share this post


Link to post
Share on other sites

Segue exemplo:

 

TABELAS A SER UTILIZADAS:

CREATE TABLE ocorrencias (
	numero INT NOT NULL AUTO_INCREMENT,
	nome VARCHAR(50) NOT NULL,
	`data` DATE NOT NULL,
	ocorrencia INT(3) NOT NULL,
	PRIMARY KEY(numero)
);
INSERT INTO ocorrencias (nome, `data`, ocorrencia) VALUES
('Joao', '2019-10-20', 15),
('Joao', '2019-10-21', 15),
('Joao', '2019-10-22', 15),
('Joao', '2019-10-23', 23),
('Joao', '2019-10-26', 15),
('Joao', '2019-10-27', 15),

('Joao 2', '2019-10-26', 15),
('Joao 2', '2019-10-26', 23);

 

QUERY:

SELECT
	*, COUNT(ocorrencia) AS 'qtd'
FROM
	ocorrencias
WHERE
	`data` >= '2019-10-20'
GROUP BY
	ocorrencia, nome

 

RESULTADO:

image.png.7e04315952c85ff198110b14f7eaeb1f.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Maria Luiza
      Tenho que fazer um programa com as seguintes condições:
       
       
      Entrada
      Para cada sequência numérica há na entrada duas linhas: uma com, apenas um valor inteiro, indica o número de valores reais que deve ocorrer na próxima linha. A linha seguinte contém tantos valores quanto indicado na linha anterior. Entre dois valores há apenas um espaço e após o último valor há um caractere de quebra de linha. A última linha da entrada contém um tamanho de sequência igual a zero e serve apenas para indicar término do processamento. Não há uma linha com sequência de valores após a ocorrência de uma linha com valor zero.
       
      Saída
       
      Para cada seqüência da entrada o seu programa deve emitir uma das seguintes respostas: ORDENADA, se a sequência estiver em ordem crescente de valores ou DESORDENADA, em caso contrário. Após cada palavra impressa deve haver apenas um caractere de quebra de linha.
       
       
      Mas não sei a lógica pra realizar , tentei colocando um for dentro de outro for, sendo que a leitura tem que para somente com tiver a entrada 0.
       
       
      Quem puder me dar uma lux eu agradeço....
    • By Pavolin
      Bom dia,
       
      Estou necessitando de ajuda em um problema que tenho que resolver urgente.
       
      Os números de Fibonacci constituem uma sequência de números na qual os dois primeiros elementos são 0 e 1, e os demais, a soma dos dois elementos imediatamente anteriores na sequência.
      Como exemplo, a sequência formada pelos 10 primeiros números de Fibonacci é: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34.
      Faça um programa em C para calcular e imprimir os 20 primeiros números da série.
       
      eu pensei em por em um vetor e somar a posição anterior com a atual, mas tudo que faço não esta dando certo alguém pode me ajudar?
      obs: pensei em ponteiro mas não manjo de ponteiro.
    • By Skidrow
      Bom dia ,
       
      pessoal , seguinte :
       
      Tenho um pequeno formulario , bastante simples :
       
      index.html
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <form id="form1" name="form1" method="post" action="teste11.php"> <p> <label for="textfield"></label> <input type="number" name="inicial" /> inicial </p> <p> <label for="textfield2"></label> <input type="number" name="quantidade" /> quantidade</p> <p> <input type="submit" name="button" value="Submit" /> </p> </form> </body> </html> Os dados prenchidos nele , são enviados para uma outra pagina .php que faz a exibição dos dados preenchidos.
       
      teste11.php
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <?php $inicial_ex = $_POST["inicial"]; $quantidade_ex = $_POST["quantidade"]; echo $inicial_ex; echo $quantidade_ex; ?> </body> </html> porem , gostaria que ocorre-se o seguinte , supondo que o usuario digite a quantidade " 10 "
       
      fosse exibido os numeros em sequencia até 10 . exemplo
       
      1 2 3 4 5 6 7 8 9 10
       
      é possivel isso ?
    • By Helison Santos
      Boa tarde, galera.
      Uma pequena dúvida, preciso criar um select com uma sequencia de numero com intrevalos de meio em meio, por exemplo
      30, 30.5, 31, 31.5.... por ai vai. Como posso estar fazendo isso em php?
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.