none
Dúvida em SQL campo DATE e campo TIME RRS feed

  • Pergunta

  • Boa noite galera!

    Tenho uma tabela que armazena os dados das refeições de um restaurante.
    Esta tabela possui um campo date (dta_refeic) e um campo TIME (hra_refeic). Para toda refeição realizada é registrado
    um id com a data e a hora da refeição.

    Portanto, eu posso ter, por exemplo, os seguintes registros:

    ID      id_restau  dta_refeic     hra_refeic
    16939      7        2012-10-06      13:50:42
    4051       7        2012-10-09      14:58:10
    5150       1        2012-10-09      15:12:23


    Seguindo o exemplo acima, eu preciso fazer uma consulta que me traga todas as refeições que foram realizadas
    após o dia 06/10/2012 as 14:00:00. Ou seja se existissem refeições no dia 08/10/2012 as 12:00:00 eu preciso trazer.

    Montei esta query só que ela não me traz o resultado que preciso:

    select
      ID,
      dta_refeic,
      hra_refeic
    from
      refeicoes
    where
      id_restau = 7 and
      dta_refeic >= '2012-06-06' and
      hra_refeic > '14:00:00'

    Gostaria de saber onde estou errando.

    PS. Deve ser necessário apenas SQL ANSI.

    Grato!

    terça-feira, 9 de outubro de 2012 22:34

Respostas

Todas as Respostas

  • Boa noite,

    Experimente desta forma:

    where
       id_restau = 7 and
       ((dta_refeic = '2012-06-06' and hra_refeic > '14:00:00') or
        (dta_refeic > '2012-06-06'))

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 10 de outubro de 2012 00:23
  • O problema é que a coluna de hora é independente da coluna de data, assim no seu select voce traria somente os dias maiores que 06/06 e que o horario for depois das 14hs, faça como o gapimex sugeriu que funcionara, fazendo 2 condições do tipo "OR" dentro da mesma condição do tipo "AND" do dia inicial 06/60 e maior que 14 e o "OR" com os outros dias.

    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    quarta-feira, 10 de outubro de 2012 09:45
  • Perfeito gapimex.

    Superei meu desafio com seu apoio.

    Agradecer também ao

    Alexandre Matayosi

    Abraços.

    quarta-feira, 10 de outubro de 2012 22:40