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

Ordenar por orden de relevancia

Estas en el tema de Ordenar por orden de relevancia en el foro de Mysql en Foros del Web. Tengo una duda que llevo tiempo planteándome×× Si realizo una consulta por ejemplo: SELECT * FROM tabla1 WHERE campo1 likes '%busqueda%'; Como se puede ordenar ...
  #1 (permalink)  
Antiguo 05/05/2008, 08:00
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Ordenar por orden de relevancia

Tengo una duda que llevo tiempo planteándome××
Si realizo una consulta por ejemplo:
SELECT * FROM tabla1 WHERE campo1 likes '%busqueda%';
Como se puede ordenar por relevancia?
  #2 (permalink)  
Antiguo 05/05/2008, 08:54
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Re: Ordenar por orden de relevancia

¿Estás buscando el algoritmo de Google?
__________________
¿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 05/05/2008, 11:43
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Ordenar por orden de relevancia

Jjajajajajajajja no jodas^^, para eso me saldría mas fácil preguntarles a ellos directamente^^
Yo no soy tan brillante como para hacer eso desde luego, tampoco le sabría sacar provexo^^

pensaba que habría alguna solución de sas fáciles pero veo que me metido en un tema complicado^^
  #4 (permalink)  
Antiguo 05/05/2008, 11:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Re: Ordenar por orden de relevancia

..Y si. Piensa que si no tienes un esquema de a qué le llamas relevancia o cómo las categorizas, en principio no es fácil imaginar el algorimo que cumpliría lo que necesitas.
Y aún teniéndolo, no sabes a priori qué consulta va a entrar en el form, por lo que estás hablando de un análisis bastante complejo. Es posible que si pudieses acotar el tipo de búsquedas, y crear alguna tabla de categorizaciones, la cosa se pudiese simplificar, al menos para el uso que buscas darle.
__________________
¿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 05/05/2008, 15:38
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Ordenar por orden de relevancia

gnzsoloyo asias por todo^^ la verdad me as aclarado que de vez en cuando hay que bajar de las nubes, aunque por otra parte me estas haciendo darle al coco ^^.
Probare a realizar la búsqueda incluyendo palabras clave.
  #6 (permalink)  
Antiguo 20/05/2008, 06:46
Avatar de DBMark  
Fecha de Ingreso: mayo-2008
Ubicación: Oxford
Mensajes: 35
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Ordenar por orden de relevancia

Es posible que necesites usar la funcion FULLTEXT para hacer esto.
No puedo todavia dejar la URL - es dentro de ONLamp DOT com y es un articulo sobre Fulltext - pero dice:
Cita:
There are a few things to note when querying FULLTEXT indices. First, MySQL automatically orders the results by their relevancy rating. Second, queries that are longer than 20 characters will not be sorted.
Es decir, se ordena por relevancia.

Para construir index de FULLTEXT haz:
Cita:
ALTER TABLE blog_table
ADD FULLTEXT (main_title, story_field) ;
Entonces se puede hacer consulta asii :
Cita:
SELECT entryID,main_title, entry
-> FROM blog_table
-> WHERE MATCH (main_title,entry) AGAINST('dinero');
Nota: Desgraciadamente no funciona con INNOdb
  #7 (permalink)  
Antiguo 20/05/2008, 07:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ordenar por orden de relevancia

Nota, DBMark, que lo que un índice FULLTEXT considera relevancia es la recurrencia de un conjunto de caracteres (segmento de texto) dentro de ciertos campos, mientras lo que plantea StReo es la relevancia temática, o se una abstracción referida al contenido conceptual del texto que se almacena en el campo.
El problema es como generar un ordenamiento por relevancia si no defines a qué le denominas así.
Por dar un ejemplo, si los campos guardan literatura médica, los textos de "diagnóstico por imágenes", "TAC", "queratosis", podrían ser considerados muy relevantes por su recurrencia en el área de la traumatología (muy publicada), y "fascias" y "cadenas musculares" no, a pesar de que son fundamentales en kinesiología, que siendo una especialidad de rehabilitación, no se consideraría relevante dada la poca bibliografía del tema.
Si no defines cuál es le criterio, como dije, la recurrencia de textos no es suficiente para establecer jerarquías de relevancia.

En otras palabras es un problema de diseño conceptual (DER del Modelo Entidad - Relación).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 20/05/2008, 07:35
Avatar de DBMark  
Fecha de Ingreso: mayo-2008
Ubicación: Oxford
Mensajes: 35
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Ordenar por orden de relevancia

Gracias por esta explicacion gnzsoloyo. Ya la veo. Es como has dicho anterior -- estamos buscando el algoritmo de Google!
  #9 (permalink)  
Antiguo 27/05/2008, 10:56
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Ordenar por orden de relevancia

Gracias chicos, pero tras unas negociaciones con el equipo técnico de google es, hemos llegado a un acuerdo^^..

nada no me dan el algoritmo^^
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 07:01.