elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Importante duda sobre Consulta SQL AVANZADA
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Importante duda sobre Consulta SQL AVANZADA  (Leído 18,370 veces)
Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Importante duda sobre Consulta SQL AVANZADA
« en: 4 Agosto 2009, 09:03 am »

WOW.. El nombre que le puse al psot debe haber dado miedo.. jajaja

Señores.. les voy a comentar algo...
Para poder entender lo que les diga, tienen que calibrar su cerebro a NO DISCUTIR EL "PORQUE" DE LA INCOHERENCIA QUE VOY A HACER...

Porque digo esto??.. Por ésto:
Una tabla de mi DATABASE de MYSQL tiene que guardar un dato algo "COMPLICADO".. Consiste en guardar un "nombre" (char) (hasta aca no hay ningun tipo de problema), y ese "nombre" es la identificacion de una secuencia de "CODIGOS"...
A ver...
Imaginen que tengo una tabla donde se guardará un CODIGO grandisimo y con él, un nombre... como un "ID"...

El problema es:
Como me conviene guardar ese codigo???
Seguramente dirán: "WOW... NO ENTIENDO PORQUE LA PREGUNTA TAN IDIOTA"... es porque, el problema viene ahora:
Ese CODIGO esta compuesto por 500 tramos..
Si.. imaginen que "noel" (el nombre) es la identificacion del codigo: 12345678 12345678 12345678 12345678 (y repetir 8 numeros 500 veces)
Sigue todo incoherente, pero aca les aclaro mas el problema ( ;-) )
La web, tiene en su momento, que analizar TODOS los codigos esos que hay guardados con diferentes nombres... en base a otro codigo de 500 pedasos, yo tengo que ver CUALES CODIGOS tienen el X% de pedasos iguales... o sea.. supongamos el 75%.. tengo que mostrar los "NOMBRES" identificadores, de los CODIGOS en la base de datos que coinciden en un 75% sus "PEDASOS" respecto a otro codigo ingresado por el usuario de 500 pedasos...



:)

ESTOY SEGURO QUE NO SABEN QUE RESPONDER.. PORQUE NO ENTIENDEN DONDE ESTA LA PREGUNTA...
La pregutna es:
La tabla: "QUILOMBO": ¿¿¿¿¿¿¿¿¿¿¿tendria que tener un campo: "NOMBRE", y 500 campos llamados: "Pedazo1", "Pedazo2".. Pedazo"500", para poder facilitar la "obtencion" (comparacion) de los PEDAZOS de CODIGO??????????????????


Y la gran pregunta luego, será: "¿Cual es la sentencia que tengo que escribir para chekear que coincidan esos porcentajes?

Nunca les pasó que estan seguros que jamas en la vida va a responder alguien este post???.. yo siento eso...


« Última modificación: 4 Agosto 2009, 09:18 am por Skeletron » En línea

Hadess_inf
Desesperado
Colaborador
***
Desconectado Desconectado

Mensajes: 2.048


Nueva Vida


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #1 en: 4 Agosto 2009, 22:34 pm »

Estas loco..

 :silbar: :silbar: :silbar:


En línea

Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #2 en: 4 Agosto 2009, 23:02 pm »

Jjajajajaj

Ese codigo, es como un "HASH", pero que debe ser comparado por fracciones... Y cada numero, cada valooorrr, de cadaaa fragmenntoooo.. es de mucha importancia.. por eso no puedo crear un HASH
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #3 en: 4 Agosto 2009, 23:24 pm »

Y para que es este 'HASH'?

Por que no usas MD5 o SHA1?.. y te evitas tanto lio..ademas para procesar una cantidad asi de informacion, comparando bloque por bloque con cada registro... :silbar:...espero que tu servidor tenga el ordenador de la NASA o sino.. :xD

Si decis para que quieres usar le HASH se te puede ayudar mejor, o dar un enfoque diferente y mas viable a tu problema  ;)

Saludos
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
isseu


Desconectado Desconectado

Mensajes: 325


°º¤ø,¸¸,El conocimiento es poder°º¤ø,¸¸,ø¤º°`°º¤ø,


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #4 en: 4 Agosto 2009, 23:38 pm »

Si usas un long text (LONGTEXT), y cada tramo esta separado de ; y luego los separas (con php o lo que uses)
es decir:
noel=12345678;12345678;12345678;12345678......
y luego en tu codigo php (por ejemplo)

$array = split(':', $tramosunidos);

En línea

Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #5 en: 4 Agosto 2009, 23:42 pm »

Cita de: isseu
Y para que es este 'HASH'?

Por que no usas MD5 o SHA1?.. y te evitas tanto lio..ademas para procesar una cantidad asi de informacion, comparando bloque por bloque con cada registro... :silbar:...espero que tu servidor tenga el ordenador de la NASA o sino.. :xD

Si decis para que quieres usar le HASH se te puede ayudar mejor, o dar un enfoque diferente y mas viable a tu problema  ;)

Saludos


Estoy dando un enfoque diferente...

Disminuiré MUCHO ese "500".. tal vez lo deje en menos de 250, y luego con otra tecnica capaz que a la mitad de 250...


Mira.. imagina que tengo un archivo .txt con gran cantidad de texto... de éste archivo, tomo cada X% una "muestra" de su texto de 8 letras (supongamos 8)... es como "tomar muestras" del interior del archivo... y guardo en MySQL el nombre del archivo (o si posicion en el disco duro) y luego a su derecha, escribo en diferentes campos, esos valores tomados por muestra...

Ahora supon que ya analicé tod mi Disco Duro y tengo en mi base de datos, todos los nombres de mis archivos con sus fragmentos de muestra..

En una aplicacion, creada por mi, le ingreso un archivo .txt de mucho tamaño tambien... la aplicacion hace EL MISMO SISTEMA DE MUESTREO a éste archivo.. cada exactamente el mismo PORCENTAJE con que hacía al DIsco Duro la muestra, tomará las muestras de éste ingresado....


Ahora tendras el CODIGO de éste archivo.. las x cantidad de muestras tomadas...
Y ahora tienes que COmparar los pedasos de muestra esos de tu archivo, con los pedasos de muestra que estan en la base de datos...
Aquellos archivos de la base de datos que coincidan en el 50% con el del archivo ingresado, se tienen que mostrar...

De paso agrego otra pregunta:
A esas 8 letras que tomaré como muestra muchas veces, las tengo que guardar en un sistema que me ocupe poco espacio.. el hexadecimal es el mejor?
« Última modificación: 4 Agosto 2009, 23:46 pm por Skeletron » En línea

Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #6 en: 4 Agosto 2009, 23:45 pm »

Si usas un long text (LONGTEXT), y cada tramo esta separado de ; y luego los separas (con php o lo que uses)
es decir:
noel=12345678;12345678;12345678;12345678......
y luego en tu codigo php (por ejemplo)

$array = split(':', $tramosunidos);

Eso implicaría "traer" a php todas las lineas de la abse de datos, y analizarlas... no sería MUYYYYYYYYYYYYY DEMASIADOOO LENTO?!?!?!?!?!?!

No hay una manera, o una query con un poco de logica, que me devuelva ya los resultados.. o sea.. que el propio SQL mire cuales coinciden en un X porcentaje..??
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #7 en: 4 Agosto 2009, 23:56 pm »

Si el 'codigo' a guardar es igual o menor a 255 caracteres, podés usar la función levenshtein de PHP para obtener la diferencia entre ambas, ejemplo:

Código
  1. <?
  2. $p1 = "5d4f5A";
  3. $p2 = "5A4F6a";
  4.  
  5. echo levenshtein($p1, $p2);//4
  6. ?>

En este ejemplo obtenemos 4, esta funcion es sensible a mayúsculas y minúsculas(CASE SENSITIVE). Función devuelve la cantidad de caracteres que hay que que sustituir, insertar o borrar para que $p1 se convierta en $p2, a esto se le llama distancia Levenshtein. Dicho de otra forma, esta cadena compara caracter por caracter, y si son diferentes aumentan la cuenta en 1 del resultado de dicha función.

Saludos

P.D.:Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #8 en: 4 Agosto 2009, 23:58 pm »

ay una manera, o una query con un poco de logica, que me devuelva ya los resultados.. o sea.. que el propio SQL mire cuales coinciden en un X porcentaje..??

No. A lo sumo con regexp podes obtener cadenas similares, pero no calcular la diferencia como con levenshtein de PHP. Y si ves que la cantidad de registros a analizares MUY extensa, podes ir haciendolo de a tramos con AJAX. Pero de cuantos estamos hablando?

Y por otro lado no veo la útilidad o proposito de esto.. :silbar: :)

Saludos
« Última modificación: 5 Agosto 2009, 00:07 am por [u]nsigned » En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: Importante duda sobre Consulta SQL AVANZADA
« Respuesta #9 en: 5 Agosto 2009, 00:12 am »

Y por otro lado no veo la útilidad o proposito de esto.. :silbar: :)

Me parece que lo dejé claro en el inicio:
Citar
Señores.. les voy a comentar algo...
Para poder entender lo que les diga, tienen que calibrar su cerebro a NO DISCUTIR EL "PORQUE" DE LA INCOHERENCIA QUE VOY A HACER...

Y la tecnica de arriba no es lo que busco.. porque esas 8 letras tienen que ser EXACTAMENTE IGUALES para poder sumar 1 punto mas de "fragmentos" iguales..
En línea

Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Informacion importante sobre IPV6.. revolucion en las T.I
Redes
ThonyMaster 5 4,315 Último mensaje 15 Mayo 2011, 21:49 pm
por fuenteRea
Duda importante sobre wordpress
Dudas Generales
ryan26 7 3,382 Último mensaje 6 Junio 2012, 15:05 pm
por ryan26
Duda de java importante
Java
andrecid 6 3,143 Último mensaje 29 Enero 2014, 18:21 pm
por 0x98364
Consulta avanzada de SQL server con like
Programación General
ppfenix79 0 1,602 Último mensaje 19 Enero 2017, 23:35 pm
por ppfenix79
[AYUDA] ¿Dónde conseguir información avanzada sobre informática?
Dudas Generales
AlbertoPerez 3 2,775 Último mensaje 18 Julio 2017, 07:15 am
por Randomize
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines