Buenos dias, le comento mi problema desarrolle un procedimiento almacenado para realizar la busqueda entre fechas en mi base de datos. de esta manera:
DELIMITER $$
DROP PROCEDURE IF EXISTS `simae`.`sp_listaReporteTrabajadores`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_listaReporteTrabajadores`(IN fechaInicial DATE, IN fechaFinal DATE, IN dato INT)
BEGIN
SELECT NOMBRE_USUARIO,NOMBRE_PRODUCTO,REFERENCIA_PRODUCTO ,f.FECHA,SUM(CANTIDAD_VENTA) AS cantidad
FROM producto p, factura f, usuario u, factura_cliente fc
WHERE p.COD_PRODUCTO=f.COD_PRODUCTO AND u.COD_USUARIO=fc.COD_USUARIO AND fc.NUMERO_FACTURA=f.NUMERO_FACTURA
AND f.FECHA BETWEEN fechaInicial AND fechaFinal AND NOMBRE_USUARIO LIKE dato
GROUP BY f.COD_PRODUCTO
ORDER BY NOMBRE_USUARIO DESC LIMIT 10;
END$$
DELIMITER ;
El problema esta en que el between al parecer solo funciona si las variables de fecha inicial y final estan entre comillas...
realice una prueba de esta manera y si me devuelve el resultado.
SELECT NOMBRE_USUARIO,NOMBRE_PRODUCTO,REFERENCIA_PRODUCTO ,f.FECHA,SUM(CANTIDAD_VENTA) AS cantidad
FROM producto p, factura f, usuario u, factura_cliente fc
WHERE p.COD_PRODUCTO=f.COD_PRODUCTO AND u.COD_USUARIO=fc.COD_USUARIO AND fc.NUMERO_FACTURA=f.NUMERO_FACTURA
AND f.FECHA BETWEEN '2012-02-12' AND '2012-06-12' AND NOMBRE_USUARIO LIKE '%%'
GROUP BY f.COD_PRODUCTO
ORDER BY NOMBRE_USUARIO DESC LIMIT 10;
Lo que quiero es saber como hacer para que las variables de entrada las detecte como si fueran texto entre comillas asi: 'fechaInicial'
agradezco su ayuda es urgente....