Jump to content


Photo

Retornar Registros Entre Data Inicial E Final


  • Faça o login para participar
14 replies to this topic

#1 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 04/01/2007, 11:40

Estou desenvolvendo um sistema de avisos, quando determinada data chega o destinatário recebe um aviso, mas, ele precisa ver os avisos dos próximos 7 dias.

O aviso é cadastrado da seguinte forma (estrutura)
===================
Tbl_Avisos
----------------------------------
codAviso  -  codDestino  -		dataIni		  -	dataFim
	12	-  600112901  - 2007-01-02 07:00:00 - 2007-01-03 23:59:00 
	50	-  600113001  - 2007-01-04 12:00:00 - 2007-01-06 18:30:00 
	100  -  700010401  - 2007-01-01 15:45:00  - 2007-01-04 16:00:00 
===================
Então, eu preciso retornar os registros que ainda não estão "vencidos" ou que já passaram...

Este sistema é uma espécie de agenda eletrônica.

Eu já tentei de todo geito fazer com que somente os registros "não-vencidos apareçam mas não consigo.
Alguém faz idéia de como resolver isso?

Falopa!

Edição feita por: hostdesigner, 04/01/2007, 11:42.


#2 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 04/01/2007, 13:16

Cara... acho que posso te ajudar, mas não entendi exatamente o q vc quer... ficou meio confuso pra mim.

Usar um BETWEEN não resolve?

[] rafael :boxing:

#3 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 04/01/2007, 14:43

Seguindo o exemplo da tabela que exemplifiquei...

Preciso que seja exibido os registros que estejam entre o dia de hoje (04/01/2007) e a data do campo "dataFinal" então neste caso eu teria como retorno os registros
50	-  600113001  - 2007-01-04 12:00:00 - 2007-01-06 18:30:00
	100  -  700010401  - 2007-01-01 15:45:00  - 2007-01-04 16:00:00
Mas, isso tem que levar em consideração a hora atual... sendo assim após às 16:00 hrs o registro com id "100" deixaria de ser válido pois já esta estaria "vencido".

Usar um BETWEEN não resolve?

É de comer? :D

Falopa!

#4 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 04/01/2007, 21:45

expr BETWEEN min AND max

Se expr é maior que ou igual a min e expr é menor que ou igual a max, BETWEEN retorna 1, senão é retornado 0. Isto é equivalente a expressão (min <= expr AND expr <= max) se todos os argumentos são do mesmo tipo. Senão os tipos são convertidos, conforme as regras acima, e aplicadas a todos os três argumentos. Note que antes da versão 4.0.5 argumentos eram convertidos para o tipo da expr.
mysql> SELECT 1 BETWEEN 2 AND 3;
-> 0
mysql> SELECT 'b' BETWEEN 'a' AND 'c';
-> 1
mysql> SELECT 2 BETWEEN 2 AND '3';
-> 1
mysql> SELECT 2 BETWEEN 2 AND 'x-3';
-> 0
expr NOT BETWEEN min AND max
O mesmo que NOT (expr BETWEEN min AND max).


Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#5 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 05/01/2007, 11:07

Eu tinha feito assim mas acho que não ficou muito bom (apesar de ser "equivalente" ao que o BETWEEN faz)
SELECT codAviso, codInstituicao, codDestino, codTipo, titulo, aviso, DATE_FORMAT(ini, '%d/%m/%Y às %H:%i') as data 
FROM puAvisos 
WHERE ini <= '2007-01-04 09:00:00' 
AND fim >= '2007-01-04 09:00:00' 
ORDER BY ini DESC
O que acham? pode haver algum problema fazendo desta forma? onde está a data e hora eu coloco a data e hora atual...

Eu não entendi como ficaria a consulta utilizando BETWEEN pois neste caso eu tenho um campo marcando a data inicial e outro marcando a data final
SELECT * 
FROM puAvisos 
WHERE CAMPO_QUAL? 
BETWEEEN dataIni 
AND dataFim
Não entendo como ficaria não dá pra informar a data necessária ali...

Falopa!

Edição feita por: hostdesigner, 05/01/2007, 11:54.


#6 boirock

boirock

    Tecnologia para todos (agora hexa campeão)

  • Usuários
  • 1559 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR
  • Interesses:PostgreSQL - PHP

Posted 05/01/2007, 13:15

Meu amigo, eu uso PostgreSQL... usei muito pouco o MySQL, mas a lógica diz q deve ser igual!

SELECT *
FROM puAvisos
WHERE CURRENT_TIMESTAMP()
BETWEEEN dataIni
AND dataFim

current_timestamp() vai retornar o dia e hora do servidor...
e a sintaxe do between é isso aí mesmo... onde um valor esteja entre dois outros valores...
ou seja X BETWEEN Y AND Z
e não tenho ctza se esse () vai depois do current_timestamp.. hehehe

[] rafael :boxing:

#7 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 05/01/2007, 14:57

Vai sim, vou testar sua tese e verificar o resultado...

===============================
Editado

Testei mas nem funcionou nada deu erro de sintaxe MySQL

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BETWEEEN ini AND fim
LIMIT 0, 30' at line 1


Falopa!

Edição feita por: hostdesigner, 05/01/2007, 15:13.


#8 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 11/01/2007, 23:46

Note que BETWEEN está com 3 E seguidos.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#9 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 12/01/2007, 08:57

Bem, verdade, mas, é que eu copiei as instruções do BOIROCK que estão erradas também nem tinha notado...

Funcionou beleza.

Falopa!

#10 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 01/10/2017, 21:35

How To Buy Ed Drugs From Canada generic viagra Blood Pressure Medications For Sale Amoxicillin Trihydrate Powder Cialis Inconvenients

#11 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 02/10/2017, 04:18

Ed Meds Online Canada Canada Pills Online Amoxicillin And Gout 20mg levitra india Buy Vibramycin Doxycycline New Zealand

#12 HaroNism

HaroNism

    Super Veterano

  • Usuários
  • 13822 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 03/10/2017, 04:20

Dosi Levitra Cephalexin Use cialis Quel Site Acheter Cialis
How Long Does Levitra Work Paroxetine 20mg No Prescription Online Tadafil viagra Cephalexin While Breastfeeding Viagra Pfizer Presentacion

#13 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 11/10/2017, 22:13

Provera Cod Accepted Online Wichita Order Now Worldwide Pyridium Amex Accepted Propecia Kjope cialis Can Amoxicillin Be Taken With Prevacid Hcpcs Code Cephalexin Description Of Amoxicillin 500mg Capsules
Albuterol No Perception Needed Propecia Once A Week cialis How To Buy Antibiotics Online Achat Levitra Medicament

#14 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 28/10/2017, 04:54

Std Pills Online Cheap Cialis Tablets viagra Buy Single Viagra Pills Uk 369
Kamagra Kaufen De Buy Amoxicillin Without Rx online pharmacy Propecia Wirkung

#15 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 13/11/2017, 00:32

Cialis Receta Seguridad Social Viagra Yahoo Answer Cialis Generico Disfuncion Erectil cheapest levitra 20mg Viagra E Pressione Arteriosa Provera Want To Buy
Propecia Klachten acquista vardenafil Tomar Levitra Caducada Dogs Amoxicillin




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq