1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

datas em consultas sql

Discussão em 'Web Development' iniciada por wrproject, 10 de Janeiro de 2008. (Respostas: 7; Visualizações: 1013)

  1. wrproject

    wrproject Power Member

    boas,como faco uma instrucao em sql para listar registos entre uma data e outra?
    agradeco a vossa ajuda
     
  2. mascker

    mascker Power Member

    Boas,

    $sql = "SELECT * FROM tabela WHERE data=>'2006-10-12' AND data <='2007-12-12' ";


    Saudações
     
  3. Lpes

    Lpes Power Member

    SELECT atributo FROM tabelaWHERE atributoBETWEEN xAND y

    Isto é o standart sql.
    Penso que em quase todas as implementações do mesmo bastará um select atributo from tabela where atributo>x and atributo<y.
    Não sei se o BETWEEN x AND y estará implementado em todos os sistemas(no oracle está se não me engano).
     
  4. mcog_blaster

    mcog_blaster Power Member

    So uma pequena correçao ja que esse query pode nao retornar correctamente os valors esperados.
    PHP:
    data=>'2006-10-12' AND data <='2007-12-12 23:59:59'
     
  5. mascker

    mascker Power Member

    Boas,

    Isso depende do campo que está na base de dados se é date ou datetime.

    Saudações,
     
  6. reise

    reise Power Member

    Essas datas não deviam estar inseridas dentro de um to_date()?
    Em Oracle pelo menos devia ser assim:
     
  7. mascker

    mascker Power Member

    Boas,

    Em Oracle não devia ser assim já que ele não quer converter nenhum valor.

    A função to_date() é utilizada para converter um valor do tipo string para um valor do tipo date.

    Em MySQL também existe essa função mas com o nome str_to_date().


    Saudações
     
  8. reise

    reise Power Member

    presumi que a coluna data era do tipo DATE. Se não usares o to_date nesse caso ele converte implicitamente com a máscara que achar que é, e muitas vezes não é! :)
    No meu trabalho já aconteceu tudo funcionar bem cá, mas quando isntalarm aquilo nos EUA começou a dar erros de data porque uma coluna que devia ser DATE era VARCHAR2 e ninguém tinha reparado.
     

Partilhar esta Página