Ver Mensaje Individual
  #14 (permalink)  
Antiguo 11/04/2008, 18:05
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Re: Select entregando resultados duplicados o triplicados

Me dices
Cita:
Iniciado por Highlander Ver Mensaje
Respecto a perder datos, nombre, apellido, telefono, direccion, ciudad, email son de los mas importantes, de por si ya estoy eliminando 8 atributos que no liste anteriormente por que son irrevelantes.
Creo que no me he explicado bien. Lo que ocurre es que se copia una tabla exactamente igual que la que tienes, pero si, por ejemplo, tienes ese nombre apellido en 4 ocasiones, y a una le falta el teléfono, a otra le falta la dirección, a otra el email y a una los otros tres, al crear la tabla utilizando la agrupación nombre apellido y ordenando por el max(id) para que te deje el último de ellos, coge el último que incluiste solamente, y si a ese último es precisamente al que le faltan los tres datos, pues de momento habrás perdido esos tres datos, en este primer filtrado.
En cuanto al hecho de que la consulta se cuelga en el servidor o en casa con PHPMyAdmin, es lógico que así sea por los límites de tiempo con que te permite trabajar el primero y con el que trabaja el segundo. Yo te recomendaría hacerlo directamente en consola (no tengo experiencia, pero creo que ahí no tendrás ese problema) y si no puedes hacerlo en consola, que tampoco lo hagas en el servidor directamente sino en localhost y utilizando una API, como por ej. PHP para lanzar esa consulta y darle a PHP todo el tiempo del mundo, más allá de 30 segundos, para hacer su trabajo. En resumen: si lo haces desde consola, no creo que tengas problema o si trabajas con PHP en localhost. Y si estás desesperado, podrías exportar esa tabla y enviármela para que yo intentara hacerte la conversión en localhost y te enviara el resultado, la nueva tabla que podrías recuperar y cargar . Pero entiendo que el problema será el nivel de confidencialidad de los datos que manejas...
No sé si habrá otras opciones. Tal vez mejorarías la velocidad si indexaras los campos de los que hacemos el concat, nombre y apellido, y si además, eliminaras la última parte lo del max(id), con lo que te dejaría la primera aparición de ese nombre apellido. Tendrías que probarlo.
Ten paciencia: lo resolveremos
Y si estamos equivocados, alguien del foro o algún moderador nos dirá el mejor modo de hacerlo.
Suerte