Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

gremio10

Deixar query pré programada

Recommended Posts

Li sim, e não é um campo de outro campo, eu apenas quero saber quando passou dois dias, e dizer que ao invés de 0 é 1.

e isso quer dizer exatamente que o resultado de um campo depende de uma conta de outro(s).

 

Completamente incorreto em modelagem de dados.

Por isso que você está 'batendo a cabeça'. A estrutura está falha do ponto de vista Normal. =)

 

#fikdica

Compartilhar este post


Link para o post
Compartilhar em outros sites
ele depende somente de si para fazer essa troca

depende essa é a grande questão.

 

não quero resolver o teu problema, quero abrir o teu olho para uma falha na estrutura.

E te mostrar que o teu remendo, só vai complicar e complicar ainda mais, se você não estudar modelagem.

 

Entenda, você tem 2 campos para a mesma informação. Isso é errado.

Se você precisa filtrar quem está inativo, e por isso está mudando o campo para 0

 

você vai usar um WHERE, certo ?

SELECT .. WHERE ativo = 0; -- puxa todos os inativos

 

Quando na verdade, tb poderia fazer

SELECT .. WHERE NOW() - data_final < 3 DIAS ... -- não testei sintaxe, apenas pseudocódigo para ilustrar a situação

 

A escolha é sua, lógico. Mas como um fórum é feito para movimentar idéias, estou expondo a minha, e te mostrando que o que você está se matando para fazer além de não ser o melhor caminho, nem deveria estar sendo feito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Claro, com certeza, a melhor coisa que se pode fazer é dar opiniões e colocar ideias na mesa :D

 

mas olha só

 

   id    product_id    user_id     code          end                   block             liberated
   1         1           1        1234    2011-06-22 21:52:12   2011-06-24 21:52:12         0

 

ou seja, o usuário 1, que comprou o produto 1, não foi liberado até esse dia ( 2011-06-22 21:52:12 ) e ele está bloqueado até o dia ( 2011-06-24 21:52:12 )

 

Então, preciso buscar na minha Query, quais que estão zerados no campo liberated e quais a data atual com horário já passou do que está lá salvo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

   id    product_id    user_id     code          end                   block             liberated
   1         1           1        1234    2011-06-22 21:52:12   2011-06-24 21:52:12         0

 

ou seja, o usuário 1, que comprou o produto 1, não foi liberado até esse dia ( 2011-06-22 21:52:12 )

okay.

 

e ele está bloqueado até o dia ( 2011-06-24 21:52:12 )

beleza! faz a query com isso!

 

assim qndo ele for liberado novamente, zere a data do bloqueio.

 

Então, preciso buscar na minha Query, quais que estão zerados no campo liberated

não precisa não :lol:

 

o campo liberated é uma redundância do campo block -- modelagem incorreta

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.