Un Select "complicado"

VoKyE
24 de Septiembre del 2003
He intentado de varias formas realizar una consulta y aun no logro realizarla satisfactoriamente.

Tengo una tabla de noticias que entre otras cosas tiene un:
id,titulo,categoria,fecha_registro

Otro tabla de categorias que tiene:
id_cat,nombre_categoria


Planteamiento del problema:
- No se cuantas categorias tengo (pueden ser 3,4,8...n)
- Quiero obtener de la tabla noticias, UNICAMENTE las tres ultimas noticias registradas de cada categoria.

TIPS:
Es algo asi como generar primero una consulta de la categoria 1 ordenada por fecha descendiente y pidiendo el limite 3.

SELECT * FROM noticias WHERE categoria = '1' ORDER BY fecha DESC LIMIT 3;

Luego con la siguiente categoria 2 ordenada por fecha y pidiendo el limite 3.

SELECT * FROM noticias WHERE categoria = '2' ORDER BY fecha DESC LIMIT 3;

Y asi sucesivamente.....

¿Eso como se hace en una sola consulta?

Gracias

ALEX
24 de Septiembre del 2003
USA CURSORES