uso del MAX
Publicado por Juan Felipe (1 intervención) el 06/10/2010 23:29:59
hola a todos.
estoy haciendo una consulta y crei q la tenia, hasta q me di cuenta que el resultado q obtengo no es excatamente lo que busco:
Yo tengo una tabla asi:
CREATE TABLE IF NOT EXISTS `HISTORIAL` (
`IDHISTORIAL` int(11) NOT NULL auto_increment,
`IDENCUESTA` int(11) NOT NULL,
`PERIODO` int(11) NOT NULL,
`ANO` int(11) NOT NULL,
`CONTESTADAS` int(11) NOT NULL default '0',
PRIMARY KEY (`IDHISTORIAL`),
KEY `IDENCUESTA` (`IDENCUESTA`)
);
algunos de los datos q tengo son por ejemplo:
IDHISTORIAL | IDENCUESTA | PERIODO | ANO | CONTESTADAS
1 | 1 | 1 | 2010 | 3
4 | 1 | 2 | 2010 | 2
de esta tabla estoy buscando e registro con el maximo periodo
es decir el resultado q busco con estos dos ejemplo seria el segundo registro donde el periodo es 2 y el IDHISTORIAL es 4
enonces yo hice esto:
SELECT MAX(PERIODO) AS periodo,ANO as ano, IDHISTORIAL AS id FROM HISTORIAL WHERE IDENCUESTA='$idEncuesta' AND ANO ='$ano'
yo paso algunas variable por parametro con php... en fin el resultado con esta sentencia q tiene me regresa el maximo periodo pero me regresa q el IDHISTORIAL es 1 y deberia ser el id del registro con max periodo q seria 4
es decir como q mezcla el maximo con el primer registro..
entonces mi pregunta es como modifico o q me falta para q me regrese elr esultado como es todo elr egistro que tiene el maximo periodo?
estoy haciendo una consulta y crei q la tenia, hasta q me di cuenta que el resultado q obtengo no es excatamente lo que busco:
Yo tengo una tabla asi:
CREATE TABLE IF NOT EXISTS `HISTORIAL` (
`IDHISTORIAL` int(11) NOT NULL auto_increment,
`IDENCUESTA` int(11) NOT NULL,
`PERIODO` int(11) NOT NULL,
`ANO` int(11) NOT NULL,
`CONTESTADAS` int(11) NOT NULL default '0',
PRIMARY KEY (`IDHISTORIAL`),
KEY `IDENCUESTA` (`IDENCUESTA`)
);
algunos de los datos q tengo son por ejemplo:
IDHISTORIAL | IDENCUESTA | PERIODO | ANO | CONTESTADAS
1 | 1 | 1 | 2010 | 3
4 | 1 | 2 | 2010 | 2
de esta tabla estoy buscando e registro con el maximo periodo
es decir el resultado q busco con estos dos ejemplo seria el segundo registro donde el periodo es 2 y el IDHISTORIAL es 4
enonces yo hice esto:
SELECT MAX(PERIODO) AS periodo,ANO as ano, IDHISTORIAL AS id FROM HISTORIAL WHERE IDENCUESTA='$idEncuesta' AND ANO ='$ano'
yo paso algunas variable por parametro con php... en fin el resultado con esta sentencia q tiene me regresa el maximo periodo pero me regresa q el IDHISTORIAL es 1 y deberia ser el id del registro con max periodo q seria 4
es decir como q mezcla el maximo con el primer registro..
entonces mi pregunta es como modifico o q me falta para q me regrese elr esultado como es todo elr egistro que tiene el maximo periodo?
Valora esta pregunta


0