| |||
| Respuesta: Problema con buscador interno (order by) Creo que la unica forma es haciendo tres busquedas distintas, y luego controlar las repeticiones por php o con el propio sql...te facilitaria las cosas un id facil de manejar que no sea el titulo... SELECT id,....los del titulo SELECT id,... los de la descripcion WHERE id NOT IN (....los id seleccionados por titulo) SELECT id,... los de las keywords WHERE id NOT IN (....los id seleccionados por titulo + ... los id seleccionados por la descripcion) ORDER BY solo ordena por el contenido de los campos no por otras restriciones....
__________________ Quim -------------------------------------------------- Como a Mafalda, no me gusta la SOPA... Última edición por quimfv; 02/02/2012 a las 02:22 |
| |||
| Respuesta: Problema con buscador interno (order by) Si pero crear ese campo es complicadillo... no??... si nos cuentas como hacerlo te lo agradeceremos, aqui estamos para parender. Un condicional que use el resultado del MATCH...AGAINST para poner los valores...?? MATCH...AGAINST te dira si MATCH no donde se ha producio el MATCH... luego el condicional...??? Otra seria hacer un UNION de las tres consultas que yo prponia agregando ese campo "prioridad" con valor fijo en cada una de las partes del UNION y luego ordenar.... Creo que no vas a ganar mucho.... con respecto a lanzar las tres consultas una detras de la otra...
__________________ Quim -------------------------------------------------- Como a Mafalda, no me gusta la SOPA... Última edición por quimfv; 03/02/2012 a las 07:12 |
| ||||
| Respuesta: Problema con buscador interno (order by) gracias por sus respuestas, tengo un par de dudas con respecto a como aplicar el código que debo armar con los 3 select. Tengo que unir todos con UNION?? No se si estoy en lo correcto pero el código debería quedarme así??: Código PHP: Última edición por xarmagedonx; 04/02/2012 a las 00:12 |
| |||
| Respuesta: Problema con buscador interno (order by) No yo los ejecutaria por separado....
__________________ Quim -------------------------------------------------- Como a Mafalda, no me gusta la SOPA... |
| ||||
| Respuesta: Problema con buscador interno (order by) gracias por tus respuestas, pero como quedaría el código, osea como lo completo, porque ami me marca error, creo que debe faltar algo. Si lo hago sin el id como sería el código??. Saludos y muchas gracias! |
| |||
| Respuesta: Problema con buscador interno (order by) Si no tienes id (identificador unico), aparte de que es un error de diseño, la cosa se complica....
Código MySQL:
Ver originalCopiar Esto da lo que pides, substituye id por el nombre de tu clave principal, en una sola consulta, no se si será rapida o no. Si no tienes clave principal, como te he dicho la cosa se complica, creo que lo mejor en ese caso seria lanzar las consultas por separado y con php (a consultar en el foro de php) eliminaria las repeticiones... Consultas separadas
Código MySQL:
Ver originalCopiar otro error de diseño que podrias tener por lo que se puede intuir es que el campo webkeywords lo estas usando como un campo multi valuado (palabra,palabra2,...) lo que se considera una mala practica. Te dejo un link al manual, generalmente clarifica conceptos 12.7. Funciones de búsqueda de texto completo (Full-Text) como podrás leer, si puedes ordenar por relevancia, pero la calcula MySQL no puedes modificarla....
__________________ Quim -------------------------------------------------- Como a Mafalda, no me gusta la SOPA... Última edición por quimfv; 10/02/2012 a las 04:57 |
| ||||
| Respuesta: Problema con buscador interno (order by) Le cambie el id ya que tenia otro distinto, muchas gracias por la respuesta, te deje karma =). Tengo una duda, no con el codigo, sino en los resultados, por ejemplo busqué animales salvajes y tuve 2 resultados distintos: En el modelo anterior tenía: 98 resultados En el modelo actual: solo 8 Con tornado paso algo similar: En el modelo anterior: 8 resultados para "tornado" En el modelo actual: 9 resultados para "tornado" Ahora estoy probando el código, voy a borrar y modificar algunas partes si puedo, para adaptarlo un poco mejor a lo que estoy necesitando. Muchas gracias por todo, también voy a probar el segundo codigo como me dijiste, así pesa menos y carga mas rápido. Saludos!!! EDITO: estuve viendo y el codigo solo ordena los resultados por titulo, funciona igual que poner order by webtitulo desc. hay forma de cambiar esto? Última edición por xarmagedonx; 10/02/2012 a las 19:46 |
| |||
| Respuesta: Problema con buscador interno (order by) ORDER BY sbcUnion.Prioridad,sbcUnion.webTitulo, sbcUnion.webDescripcion, sbcUnion.weburl ???
__________________ Quim -------------------------------------------------- Como a Mafalda, no me gusta la SOPA... |
| ||||
| Respuesta: Problema con buscador interno (order by) ya lo modifique para que no mostrara resultados solo por titulo, pero el problema ahora es que solo muestra resultados cuando se busca una sola palabra. Al buscar 2 o mas muestra muy pocos resultados o directamente no muestra ninguno EDITO: Pude resolverlo con la funcion explode() de php Última edición por xarmagedonx; 13/02/2012 a las 20:28 |