
08/03/2009, 15:50
|
| | Fecha de Ingreso: enero-2008
Mensajes: 36
Antigüedad: 17 años, 3 meses Puntos: 0 | |
Delete from Hola,
Quiero hacer una sentencia MYSQL para eliminar registros antiguos de mi base de datos.
Os describo la tabla y os cuento mi intención :)
TABLA "mitabla"
columna1: id
columna2: dia (del tipo AñoMesDia, ej: 20090301)
columna3: datos (ej: "este dia sucedio esto o lo otro..."
columna4: tipo (ej: "incidencias")
Tengo una tabla donde se introducen partes de varios tipos (incidencias, altas, etc..), como mucho hay un parte por dia y tipo, y cada parte lleva su descripción (columna 3).
El caso es que solo quiero guardar en la BBDD los 30 ultimos partes de cada tipo (ordenados por la fecha) ya que los demás ya no se mostrarán jamás. Pueden haber dias que no haya parte de un tipo pero sí haya de otros tipos. El caso es que al final en un PHP solo mostraré los 30 ultimos partes de cada tipo. Con un SELECT es sumamente fácil seleccionarios, pero el problema viene cuando se están acumulando tantos registros en la BBDD inservibles.
Quiero hacer una sentencia que compruebe si un registro de un parte es anterior a los 30 primeros y lo elimine de la BBDD, pero no tengo ni idea como plantear el DELETE
Si alguien tiene idea y puede ayudar, le estaré agracedido :) |