Si no tienes id (identificador unico), aparte de que es un error de diseño, la cosa se complica....
Código MySQL:
Ver originalSELECT sbcUnion.webTitulo
, sbcUnion.webDescripcion
, sbcUnion.weburl
(SELECT webTitulo
, webDescripcion
, weburl
, 1 as Prioridad
SELECT webTitulo
, webDescripcion
, weburl
, 2 as Prioridad
SELECT webTitulo
, webDescripcion
, weburl
, 3 as Prioridad
OR webDescripcion
like '%$frase%') SELECT webTitulo
, webDescripcion
, weburl
, 4 as Prioridad
OR webDescripcion
like '%$frase%' ORDER BY sbcUnion.Prioridad
,sbcUnion.webTitulo
, sbcUnion.webDescripcion
, sbcUnion.weburl
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 originalSELECT webTitulo
, webDescripcion
, weburl
SELECT webTitulo
, webDescripcion
, weburl
SELECT webTitulo
, webDescripcion
, weburl
SELECT webTitulo
, webDescripcion
, weburl
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....