Ir para conteúdo
Fórum Script Brasil
  • 0

Select intervalo data


crazySerk

Pergunta

Galera estou usando este select:

SELECT * FROM anuncio_popup a WHERE a.status = 'A' AND a.data_inicio >= NOW() AND a.data_final <= NOW() ORDER BY RAND() LIMIT 1
Preciso verificar se a data atual é maior ou igual a data_inicio se for verdade então a campanha está em andamento ou começa no dia.
E também preciso checar se a data atual não ultrapassou a data_final, caso a data atual já passou do prazo final não me retorna nada.
Bem basicamente está é a logica.
A questão é que não me retorna nada esse select apenas vazio, e possuo dados salvo por exemplo uma campanha que começar hoje (19/03) e que termina dia 25/03...
O select acima não deveria funcionar?
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Não deveria funcionar, pois você trocou a ordem dos >=(maior ou igual) e <=(menor ou igual). A sua consulta está procurando por um registro no qual:

1 - A data_inicio seja >=(maior ou igual) que a data atual(NOW()): Trocando em miúdos uma campanha que ainda não começou.

2 - A data_final seja <=(menor ou igual) que a data atual(NOW()): Trocando em miúdos uma campanha que já terminou.

Se não houver nenhum registro com datas erradas, você nunca obterá um registro de uma campanha que ainda não começou e já terminou ao mesmo tempo.

Abraços.

Tudo de bom.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...