@Vini: ko si omenjal da naj ne bi naredil z LIKE-om sem mislil da bi naredil še vedno MATCH po tabeli ki ima besedila, se pravi "vsebina", katere je in bo največ, le za ostale manjše tabelice naj bi uporabil LIKE... primer kako sem naredil zaenkrat:
$addon = "SELECT DISTINCT vsebina.id, MATCH(vsebina.besedilo) AGAINST('".$keyword."') AS score FROM `delo_vsebina` LEFT JOIN `vsebina` ON delo_vsebina.vsebina_id=vsebina.id LEFT JOIN `delo` ON delo_vsebina.delo_id=delo.id LEFT JOIN delo_avtor ON delo_avtor.delo_id=delo.id LEFT JOIN avtor ON delo_avtor.avtor_id=avtor.id LEFT JOIN delo_beseda ON delo_beseda.delo_id=delo.id LEFT JOIN beseda ON delo_beseda.beseda_id=beseda.id LEFT JOIN delo_podnaslov ON delo_podnaslov.delo_id=delo.id LEFT JOIN podnaslov ON delo_podnaslov.podnaslov_id=podnaslov.id WHERE CONCAT_WS(' ', avtor.ime, avtor.priimek, beseda.naziv, podnaslov.podnaslov) LIKE ('%".$keyword."%') OR MATCH(vsebina.besedilo) AGAINST('".$keyword."')";
Še vedno misliš da bo obupen performance tega SQL-a?
Vsekakor pa vem da bo potrebno "search" spremeniti v prihodnosti in uporabiti nekaj drugega kot MySQL-ov search... SphinX sem že gledal in je precej luštna zadeva, ki sama kešira v fajlih, dejansko pa se v sintakso le-tega še nisem imel časa poglobiti.
@Roky: Trenutna aplikacija je v codeigniterju, tako da za menjavo frameworka je malce prepozno :) Predvsem zato ker je že čisto zaključena, časa pa je samo še ta teden... :)