[firebase-br] RES: RES: RES: Consulta entre duas datas

Eduardo Bahiense eduardo em icontroller.com.br
Qui Maio 24 17:42:19 -03 2007


Olá Marcelo

Sua construção, sintaticamente está correta. Só não tenho certeza como o 
otimizador vai se comportar. Verifique, no PLAN dessa consulta, se o FB 
usa índices, quantidade de leituras etc. Se isso estiver normal, manda 
ver... Não tem nada errado na sua abordagem.

[]'s Eduardo


Marcelo Moreira escreveu:
> Xará,
> No meu caso eu tenho dois campos de data então este SQL que você deixou ai
> não me atenderia.
> 
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
> nome de Marcelo Silva
> Enviada em: quinta-feira, 24 de maio de 2007 16:34
> Para: FireBase
> Assunto: Re: [firebase-br] RES: RES: Consulta entre duas datas
> 
> Esse between esta incorreto
> 
> select ID_COMPROMISSO
> from COMPROMISSO
> where '25.05.2007' between DATA_INICIO AND DATA_FIM
> 
> o certo é WHERE CAMPO_DATA BETWEEN DATA_INICIO AND DATA_FIM
> 
> Só isso
> 
> ------------------------------------------
> Marcelo Silva
> msn: marcvan em ig.com.br
> 11 6723-3106 - TB
> 11 9693-4251 - CL
> ------------------------------------------
> 
> ----- Original Message ----- 
> From: "Marcelo Moreira" <marcelo em easysistemasmg.com.br>
> To: "'FireBase'" <lista em firebase.com.br>
> Sent: Thursday, May 24, 2007 4:16 PM
> Subject: [firebase-br] RES: RES: Consulta entre duas datas
> 
> 
> Alisson,
> 
> Na verdade não era isso. Vou tentar explicar o que eu tenho:
> Tenho uma agenda de compromisso de vendedores externos então suponhamos que
> eu tenha um vendedor e quero agendar um compromisso para ele que vai durar 3
> dias então teria DATA_INICIO = 24/05/2007 e DATA_FIM = 26/05/2007
> Vou ter esta situação para vários vendedores ai o que vai acontecer eu quero
> agendar um novo compromisso para o vendedor Marcelo no dia 25/05/2007 então
> antes de fazer este novo agendamento preciso saber se ele já tem algo para
> aquele dia (25/05/2007)
> Eu poderia usar perfeitamente o Between mas no meu caso como voce
> exemplificou não será possível pois eu tenho DATA_INICIO e DATA_FIM ou seja
> são dois campos data.
> 
> Na verdade eu vou ter dois tipos de buscas:
> 
> 1 - Eu quero saber se o usuário tem algum compromisso no dia 25/05/2007
> entao eu faço assim:
> 
> select ID_COMPROMISSO
> from COMPROMISSO
> where '25.05.2007' between DATA_INICIO AND DATA_FIM
> 
> 2 - Eu quero saber se o usuario tem algum compromisso no período de
> 20/05/2007 ate 28/05/2007 entao eu faria assim:
> 
> select ID_COMPROMISSO
> from COMPROMISSO
> where (DATA_INICIO  >= '20.05.2007') AND (DATA_FIM <= '28.05.2007')
> 
> Estas duas saídas que encontrei esta me atendendo perfeitamente, gostaria
> apenas de saber se esta seria a maneira mais correta de fazer?
> 
> Fico no aguardo.
> 
> Abraço.
> 
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
> nome de Alisson
> Enviada em: quinta-feira, 24 de maio de 2007 15:42
> Para: lista em firebase.com.br
> Assunto: Re: [firebase-br] RES: Consulta entre duas datas
> 
> Cara.. tah estranho o q vc quer..
> 
> Normalmente a gente usa o Between pra informar datas ENTRE...
> 
> Entao vc fala..
> 
> Select IDCompromisso
>  from compromisso
> where Data_Compromisso Between :DAtaini and :DataFim
> 
> assim ele vai pegar por exemplo.. 01.01.2007 a 10.01.2007 e vai comprar na
> tabela tudo q esta nesse intervalo e me mostrar..
> 
> agora se vc quer q ele traga apenas de uma data especifica.. vc coloca =
> 
> Select IDCompromisso
> from compromisso
> where Data_Compromisso = :DataIni
> 
> nao sei se entendi bem tua duvida...
> 
> FAlow
> 
> --
> Alisson R.S.
> Global Soft - Desenvolvimento de Sistemas
> 
> "Marcelo Moreira"
> <marcelo em easysistemasmg.com.br> escreveu na mensagem
> news:001701c79e18$03fb6800$0bf23800$@com.br...
> Mexendo aqui nas catracas eu estou fazendo assim:
> 
> Código:
> 
> select ID_COMPROMISSO
>   from COMPROMISSO
>  where '03.01.2007' between DATA_AGENDA AND DATA_AGENDA_FIM
> 
> 
> 
> Esta seria uma maneira correta de resolver o problema?
> 
> 
> 
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br
> [mailto:lista-bounces em firebase.com.br] Em nome de Marcelo Moreira Enviada
> em: quinta-feira, 24 de maio de 2007 11:42
> Para: lista em firebase.com.br
> Assunto: [firebase-br] Consulta entre duas datas
> 
> Pessoal,
> Bom dia!
> 
> Tenho a seguinte TABELA / CAMPOS:
> 
> 
> Código:
> 
> 
> 
> COMPROMISSO
>    ID_COMPROMISSO INTEGER
>    DATA_INICIO DATE
>    DATA_FIM      DATE
> 
> 
> 
> Suponhamos que eu tenho um compromisso que vai ter:
> 
> DATA_INICIO = 01/01/2007
> DATA_FIM = 05/01/2007
> 
> O que eu preciso fazer é escolher um dia qualquer por exemplo:
> 
> dia da consulta := 03/01/2007
> 
> e o SQL me retornar este compromisso cadastrado acima.
> 
> 
> 
> 
> 
> 
> 
> Marcelo Moreira
> 
> 
> 
> + HYPERLINK
> "mailto:marcelo em easysistemasmg.com.br"marcelo em easysistemasmg.com.br
> 
> ) (31) 9165-9616
> ((31) 3334-5139
> MSN: HYPERLINK
> "mailto:easysuporte em terra.com.br"easysuporte em terra.com.br
> 
> Skype: EasySistemas
> 
> 
> 
> Easy Sistemas
> 
> HYPERLINK "http://www.easysistemasmg.com.br"www.easysistemasmg.com.br
> 
> 
> 
> 
> 
> Antes de IMPRIMIR,  pense em sua responsabilidade e compromisso com o MEIO
> AMBIENTE
> 
> 
> 
> 
> No virus found in this outgoing message.
> Checked by AVG Free Edition.
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
> editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
> 
> 
> No virus found in this outgoing message.
> Checked by AVG Free Edition.
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
> 
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
> editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 
> 
> 
> 
> 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
> 
> 
> 
> No virus found in this outgoing message.
> Checked by AVG Free Edition.
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
> 
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 
> No virus found in this incoming message.
> Checked by AVG Free Edition. 
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
>  
> 
> No virus found in this outgoing message.
> Checked by AVG Free Edition. 
> Version: 7.5.467 / Virus Database: 269.7.7/816 - Release Date: 23/5/2007
> 15:59
>  
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 





Mais detalhes sobre a lista de discussão lista