Comunidad de diseño web y desarrollo en internet online

consulta mysql con fechas

Citar            
MensajeEscrito el 30 May 2014 10:59 pm
Estimados:
Tengo en mi base de datos un registro de productos que contiene la fecha de vencimiento de los mismos
Necesito hacer un select de esta base de datos para que me traiga como resultado todas las fechas que encuentre cercanas al dia de hoy

<?PHP
$dia = time();
$hoy = date ("Y-m-j", $dia);

$Vencimientos = "SELECT * from productos where fecha (cercana) $hoy limit 10"; // quiero todas las cercanas (mayores, menores e iguales)
?>

Esto es posible o estoy pidiendo imposibles ??

Desde ya mcuhas gracias

Por steve_fire

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Jun 2014 12:20 pm
Define "cerca".

¿5 días?, ¿10 días?.

Lo que puedes hacer es sumar fechas en PHP pasarle esa fecha como parámetro en el WHERE de la SQL.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 02 Jun 2014 01:22 pm
Como cerca me refiero a lo siguiente. quiero ver en pantalla solo 15 registros.
Justo en el centro de estos 15 registros queiro ver el que esta mas cerca a la fecha de hoy, hacia arriba los 7 anteriores y hacia abajo los 7 posteriores.
Cabe aclarar que el listado es muy extenso y a veces hay registros que tienen vencimientos dos meses despues y a veces hay 100 productos que vencen la misma semana.
Habia pensado utilizar la sentencia INTERVAL pero no me queda la fecha de hoy justo en el medio por lo que te explique antes.

Por steve_fire

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Jun 2014 06:29 pm
Pues en ese caso usa BETWEEN en conjunción con LIMIT.

Sería algo así:

Código MySQL :

SELECT * FROM `tabla` WHERE `fecha` BETWEEN '2014-05-23' AND '2014-06-12' LIMIT 15;

Aunque si hay más de 15 puede que no esté listando todos los que te interesen exactamente.

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.