Estou precisando comparar datas direto na consulta sql, com o objetivo de otimizar o tempo de processamento.
Tenho a seguinte consulta:
$sql = "SELECT data_fim, id FROM produtos";
$query = mysql_query($sql);
while($linha = mysql_fetch_assoc($query)){
$hoje = date("Y-m-d");
$fim = strtotime($linha['data_fim']);
$hoje = strtotime($hoje);
if($fim < $hoje) {//aqui faço um update}
...
//Obs: o campo data_fim é do tipo DATE no sql.
O banco de dados no qual estou fazendo a consulta é muito grande, então sempre que entro na página que chama essa função leva séculos para carregar. Ao meu ver a solução seria comparar a data do banco com a data atual direto na consulta SQL, porém não consegui fazer e nem achei nada que me ajudasse na web.
Alguém já passou por essa situação? Alguém pode me dar uma luz?
Question
Rafael Rocha B.
Olá pessoal,
Estou precisando comparar datas direto na consulta sql, com o objetivo de otimizar o tempo de processamento.
Tenho a seguinte consulta:
$sql = "SELECT data_fim, id FROM produtos";
$query = mysql_query($sql);
while($linha = mysql_fetch_assoc($query)){
$hoje = date("Y-m-d");
$fim = strtotime($linha['data_fim']);
$hoje = strtotime($hoje);
if($fim < $hoje) {//aqui faço um update}
...
//Obs: o campo data_fim é do tipo DATE no sql.
O banco de dados no qual estou fazendo a consulta é muito grande, então sempre que entro na página que chama essa função leva séculos para carregar. Ao meu ver a solução seria comparar a data do banco com a data atual direto na consulta SQL, porém não consegui fazer e nem achei nada que me ajudasse na web.
Alguém já passou por essa situação? Alguém pode me dar uma luz?
Obrigado pela atenção,
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.