Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

h_felix

Select mysql em intervalos de tempos

Recommended Posts

Boa tarde Pessoal ,

 

Estou com o Seguinte problema para resolver .

 

 

Tenha uma tabela ( tblVenda ) . Nela tenho um campo de data ( dataVenda ) .

 

 

Essa tabela possui varios registros em datas diferentes :

 

ex

 

id -- nomeCliente ...... dataVenda

1 - fulano 2015-03-06

 

2 - fulano 2015-02-27

 

3 - fulano 2015-01-13

 

4 - fulano 2014-12-10

 

etc ...

 

Tenho uma tabela feita ja que exibe os dados da tabela tblVenda .

 

 

Eu queria fazer uma outra tabela ,onde fosse feita a consulta dos dados quando a data da venda for igual a 6 meses .

 

 

tipo , hoje é dia 07/03/2015 ( mês 3 ) então na consulta , pegaria os dados de 6 meses atras somente , ou seja , todos os dados do mês 10/2014

 

 

Tem como fazer isso ?

 

 

Desde ja ,grato

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

É só pegar o mês atual e subtrair 6. Depois usar esse mês na consulta, considerando apenas o mês do campo dataVenda. Você consegue isso usando funções de data e hora do SGBD que está utilizando.

 

Algo assim:

 

SELECT campo FROM tabela WHERE MONTH(dataVenda) = mes_a_ser_buscado;

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

É só pegar o mês atual e subtrair 6. Depois usar esse mês na consulta, considerando apenas o mês do campo dataVenda. Você consegue isso usando funções de data e hora do SGBD que está utilizando.

 

Algo assim:

SELECT campo FROM tabela WHERE MONTH(dataVenda) = mes_a_ser_buscado;

 

 

 

Cosegui algo mais ou menos com esse comando aqui , mas o problema dele e que ou vai pegar o registro do dia exato , ou os registros do anteriores.

 

SELECT dataVenda,nomeCliente,produtoFROM tblVenda where dataVenda = CURRENT_DATE()-155 ou

SELECT dataVenda,nomeCliente,produtoFROM tblVenda where dataVenda <= CURRENT_DATE()-155

 

Aqui , o select vai pegar os registos onde a Data da Venda e igual ou menor que 5 meses .

 

 

Mas , eu queria que selecionasse somente os valores do mes .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom a sua duas formas, a posta acima pelo Beraldo

SELECT * FROM table WHERE MONTH(create_date) = 2

e com BETWEEN

SELECT * FROM rapoarte WHERE DATE(create_date) BETWEEN "2015-01-01" AND "2011-01-31"

*Bom há duas formas, o code do post acima pelo Beraldo*

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.