Full text pe 3 coloane simple

Întrebări legate de conectarea la baze de date MySQL prin intermediul PHP

Moderatori: Zamolxe, Moderatori

joe_black
Average Member
Mesaje: 51
Membru din: Mie Mai 03, 2006 6:19 pm

Full text pe 3 coloane simple

Mesajde joe_black » Vin Oct 10, 2008 12:19 pm

Am un tabel cu autori ('authors') si 3 coloane pe care vreau sa execut un ful text search,

Cod: Selectaţi tot

id firstName    | lastName    |  alias
4    George     Cosbuc               cosbucu
5    Vasile     Alexandrescu       alex
7    Providenta  Mateescu       
8    Nicolae     Olahul               Olahul
9    Gheorghe   Sincai               geo
10    Gheorghe   Asachi               Alexandrescu
11    Dimitrie     Bolintineanu       dumitru
12    Otilia     Cazimir    


id primary_key

firstName,lastName,alias - FullTEXT index (pe toate 3 coloanele)




Cand execut

Cod: Selectaţi tot

SELECT * FROM `authors` WHERE MATCH(firstName,lastName,alias) AGAINST ('alex');

imi intoarce ce trebuie
5, 'Vasile', 'Alexandrescu', 'alex'

dar cand execut

Cod: Selectaţi tot

SELECT * FROM `authors` WHERE MATCH(firstName,lastName,alias) AGAINST ('ateesc');

nu imi intoarce nici un rand desi ar trebui sa imi intoarca
'7', 'Providenta', 'Mateescu',''

Aveti idee cum sa fac sa mearga?



ebogdan
Senior Member
Mesaje: 218
Membru din: Joi Iul 27, 2006 2:45 pm
Localitate: Constanta

Re: Full text pe 3 coloane simple

Mesajde ebogdan » Vin Oct 10, 2008 1:25 pm

joe_black scrie:Aveti idee cum sa fac sa mearga?

Păi te apuci și citești manualul, pentru că în primul rând nu ai înțeles ce face „full-text search” în MySQL. Adică indexează cuvinte, nu părți din ele, iar tu nu ai un cuvânt de sine stătător 'ateesc' pe nicăieri. Folosești LIKE pentru așa ceva.

Apoi citești de stop-words și pragul de 50%, și la sfârșit despre colație.

Dacă nu, din câte văd eu și tu și utilizatorii site-ului tău o să aveți surprize neplăcute la căutare.


Înapoi la “MySQL”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 4 vizitatori