Empiezo presentando mi tabla:
Código:
-- Estructura de tabla para la tabla `extras`
--
CREATE TABLE IF NOT EXISTS `extras` (
`usuario` varchar(30) COLLATE utf8_spanish2_ci NOT NULL,
`extraID` int(11) NOT NULL AUTO_INCREMENT,
`fecha` date NOT NULL,
`local` varchar(30) COLLATE utf8_spanish2_ci NOT NULL,
`tempo` int(2) NOT NULL,
`precio` decimal(5,2) NOT NULL,
`notas` text COLLATE utf8_spanish2_ci NOT NULL,
`pago_asoc` char(1) COLLATE utf8_spanish2_ci NOT NULL DEFAULT 's',
`propina` decimal(5,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`extraID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci AUTO_INCREMENT=24 ;
Desde una aplicacion web estoy intentando hacer una SELECT filtrando por 3 variables ( usuario, local y año)
En teoria seria lo siguiente:
Código:
select * from extras WHERE YEAR(fecha) = '2014' AND pago_asoc = '*' AND local = 'Casa' AND usuario = 'Santi'
El problema es que no siempre se dan los 3 parametros desde la aplicacion.
Por ejemplo a veces necesito conocer las extras de Santi en 2014 en TODOS LOS LOCALES.
Habia pensado en esto:
Código:
select * from extras WHERE YEAR(fecha) = '2014' AND pago_asoc = '*' AND local = '*' AND usuario = 'Santi'
Si conocen algun tipo de forma para arreglar esto os lo agradezco. Estoy intentando arreglarlo desde el apartado de php pero desde ahi lo veo mas complicado.
Gracias de antemano.