Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Delete

Estas en el tema de Delete en el foro de Mysql en Foros del Web. Buenas tardes tengo una pregunta: Digamos que tenemos una tabla con 100 registros y yo quiero seleccionar los ultimos 16 registros entonces hago lo siguiente: ...
  #1 (permalink)  
Antiguo 22/07/2009, 13:02
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 10 años, 4 meses
Puntos: 0
Delete

Buenas tardes tengo una pregunta:

Digamos que tenemos una tabla con 100 registros y yo quiero seleccionar los ultimos 16 registros entonces hago lo siguiente:

SELECT * FROM tabla ORDER BY id DESC LIMIT 16

Ahora esta es mi pregunta de esos 16 registros como puedo hacer por ejemplo para eliminar los registros con posicion en la consulta es decir las posiciones:

2,3,4,5,7,8,9,10,12,13,14,15

es decir solo quiero dejar las posiciones 1,6,11,16

se puede hacer esto
  #2 (permalink)  
Antiguo 22/07/2009, 13:34
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 10 años, 10 meses
Puntos: 360
Respuesta: Delete

Prueba así:
Código sql:
Ver original
  1. (SELECT *FROM tabla LIMIT 0,1)
  2. UNION
  3. (SELECT *FROM tabla LIMIT 5,1)
  4. UNION
  5.  (SELECT *FROM tabla LIMIT 10,1)
  6. UNION
  7. (SELECT *FROM tabla LIMIT 15,1);

El limit, muestra la posición en el primer parámetro y el numero de registros a partir de esa posición. Para este caso, estaríamos mostrando los registros 1,6,11,16 ya que el primer registro se identifica con el cero.

Son necesarios los paréntesis.

un saludo
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 22/07/2009, 13:41
 
Fecha de Ingreso: julio-2009
Mensajes: 13
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Delete

gracias por tu ayuda
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:22.