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

eliminar datos repetidos de un año especifico

Estas en el tema de eliminar datos repetidos de un año especifico en el foro de Mysql en Foros del Web. saludos, soy nuevo en el foro, la verdad en mas de una ocacion me ha sacado de mis dudas leyendo otros post, pero con este ...
  #1 (permalink)  
Antiguo 16/07/2012, 17:47
 
Fecha de Ingreso: julio-2012
Ubicación: Chihuahua
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
eliminar datos repetidos de un año especifico

saludos, soy nuevo en el foro, la verdad en mas de una ocacion me ha sacado de mis dudas leyendo otros post, pero con este problema no doy solucion

tengo una base de datos en la cual se hacen capturas de datos, se han venido capturando desde el 2008, y muchos de esos datos ya no nos sirven.

quisiera hacer una consulta donde me muestre todos los datos del 2008 (esa consulta esta sencilla) pero que ya no esten en los años posteriores, si no hay capturas en los años posteriores quiero que me muestre la informacion y si tiene capturas del 2009 en adelante que no muestre la informacion, para asi poder eliminar esos registros?

espero haberme explicado bien, saludos

Última edición por darkmoncho; 16/07/2012 a las 17:51 Razón: añadir informacion
  #2 (permalink)  
Antiguo 16/07/2012, 18:38
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: eliminar datos repetidos de un año especifico

La idea se entiende, pero sin conocer como es la estructura de las tablas que hay que usar, sus relaciones y el tipo de datos que tienen, no hay por donde empezar.
Postea por lo menos la estructura de las tablas que tienen los datos y veremos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 17/07/2012, 15:58
 
Fecha de Ingreso: julio-2012
Ubicación: Chihuahua
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: eliminar datos repetidos de un año especifico

saludos, mira no entiendo mucho de sql, soy nuevo en ese mundo, asi que disculpenme si no me explico lo suficientemente bien.

los datos que se capturan son placas vehiculares (ej. eee2222), esos datos estan en una tabla que trae toda la informacion de las capturas, como son el id, la placa, quien la capturo, si esta pagada o no, tipo de vehiculo, hora y fecha en que se capturo(ej. 27-07-2008 14:00:00.000 todo esto en un solo campo) etc....

quiero que me muestre todas las placas que se capturaron el 2008 pero que no tengan capturas en los años posteriores, para eliminar esos registros
  #4 (permalink)  
Antiguo 17/07/2012, 17:53
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: eliminar datos repetidos de un año especifico

El tema es claro, pero no nos sirve de nada toda la explicación si no vemos la estructura de las tablas, al menos una muestra de los datos, etc.
De las sentencias de creación (eso es lo que queremos decir cuando hablamos de estructura), podemos inferir las relaciones entre las tablas, las claves usadas, los índices que existen, y con todo eso podemos construir consultas claras y eficientes.
Una descripción como esta:
Cita:
la informacion de las capturas, como son el id, la placa, quien la capturo, si esta pagada o no, tipo de vehiculo, hora y fecha en que se capturo(ej. 27-07-2008 14:00:00.000 todo esto en un solo campo) etc....
No nos da información clara y precisa, y por ende no nos sirve para construir ni una consulta simple.
En definitiva: Lo que necesitas es un tipo de consulta específico, con datos muy específicos. Por ende, necesitamos la información específica para poder guiarte...
Lo poco que se puede inferir de lo que pones nos dice que la consulta podría ser algo como
Código MySQL:
Ver original
  1. FROM tabla
  2.     YEAR(fechacaptura) = 2008
  3.     AND placa NOT IN(SELECT placa FROM tabla WHERE YEAR(fechacaptura) > 2008);
Pero también podría ser que se la pudiese hacer mucho mejor de otro modo. Esta no es la única forma de lograrlo.

Una sugerencia es que si el tema te excede, es mejor que busquen a alguien que maneje SQL y bases de datos, porque te lo podrá resolver rápidamente.
Esta es un área de conocimientos técnicos y muy específicos, que la mayor parte de los programadores no maneja bien (me van a querer comer vivo por decirlo, pero es la verdad, los modos de razonar y analizar son diferentes), y es mejor que de esto se ocupe alguien que tenga tiempo y los conocimientos adecuados, especialmente si es un emprendimiento comercial ya en funcionamiento.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 18/07/2012, 10:03
 
Fecha de Ingreso: julio-2012
Ubicación: Chihuahua
Mensajes: 9
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: eliminar datos repetidos de un año especifico

muchas gracias gnzsoloyo, acabo de ejecutar la consulta con el ejemplo que me diste y me funciono de los mil maravillas.

le hice una pequeña modificación para que me mostrara todas las placas activas, y funciono perfectamente.

ahora lo que quiero hacer con estos datos es cambiarlos de activos a cancelados, para esto seria esta consulta:

Código MySQL:
Ver original
  1. update tabla set estatus = 'cancelada'
  2. where YEAR(fechacaptura) = 2008
  3.     AND placa NOT IN(SELECT placa FROM tabla WHERE YEAR(fechacaptura) > 2008);


estoy en lo correcto, o no?

Etiquetas: año, especifico, registros, repetidos
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 00:16.