alievi 0 Denunciar post Postado Fevereiro 1, 2013 Gostaria de ajudas em um problema que me deparei na seleção de um período de datas baseado na data atual. Tenho um tabela chamada promo_periodo com os campos (periodo_id, periodo_titulo, periodo_inicio, periodo_fim) e os seguinte registros: 8 | Fev - Semana 01 | 2013-02-04 | 2013-02-10 9 | Fev - Semana 01 | 2013-02-11 | 2013-02-17 10 | Fev - Semana 01 | 2013-02-18 | 2013-02-24 11 | Fev - Semana 01 | 2013-02-25 | 2013-03-03 Tenho a data de hoje. Exemplo (2013-02-01) e queria mostrar somente o registro 8. Fiz o select usando BETWEEN: SELECT * FROM promo_periodo WHERE (periodo_inicio BETWEEN '2013-02-01' AND periodo_fim) Só que desta forma ele me retorna todos registros, a solução foi por (por enquanto) um ORDER BY periodo_id ASC LIMIT 1, só que fico preso ao periodo_id. A minha idéia é que, dependendo da data de hoje, mostre apenas uma semana, neste caso só a 8, a 9 só depois que a data de hoje passar do dia 2013-02-10. Tentei também: SELECT * FROM promo_periodo WHERE ('2013-02-01' BETWEEN periodo_inicio AND periodo_fim) * Não retorna nada. Fico no aguardo. Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Fevereiro 1, 2013 Olá tenta desta forma. SELECT * FROM promo_periodo WHERE periodo_inicio BETWEEN NOW() AND periodo_fim; ou assim SELECT * FROM promo_periodo WHERE periodo_inicio BETWEEN SYSDATE() AND periodo_fim; Assim ele busca a data atual do sistema. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Fevereiro 1, 2013 Os campos estão no formato DATE ? A HORA é gravado junto à DATA ? Compartilhar este post Link para o post Compartilhar em outros sites