Un Select "complicado"
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
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
