Mysql Fulltext Arama Sorunu
-
arkadaşlar arama yaptırdıım sorgu şu;
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('$aranacak')";
mesela bi yazının içinde tahribat kelimesi geçiyor, tahribat diye aratırsak o yazı çıkıyor, ama tahri diye aratırsak çıkmıyor, bunun için ne yapmalı ne etmeli ?
şunlarıda denedim, bi netice vermedi;
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('*$aranacak*')";
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('%$aranacak%')";
-
hacı ben mssql de
SELECT * FROM yazilar wher adi like @parametre + '%'
şeklinde yaptığım zaman istediğin gibi çalışıyor
adam tahri yazdığında tahribat çıkıyo
not:
@parametre kullanıcının girdiği değer :)
not2:bu mssql için
-
mysql de de aynı şekilde çalışır.
select * from tablo where hucre like %tahri%
'%tahri%' de olabilir tam emin değilim denemek lazım.
Neyse sonuç olarak içinde tahri geçen kelimeleri getirir :)
-
ama sen daha gelişmiş bi arama sorgusu istersen bayaa kasman lazım
bi kere öyle bişi yapmaya çalıştıydım 2 gün sürmüştü :)
hani bu google daki gibi
"bunu mu demek istediniz" dalgası :)
-
degisken = xyxyx
mysql_query("SELECT * FROM uyeler WHERE soyad LIKE degisken%")
ya da
mysql_query("SELECT * FROM uyeler WHERE soyad LIKE 'xyxyx%'")
% işaretini sona koyarsan baştan itibaren bakar, başa koyarsan sondan itibaren bakartahribat için düşünürsek % işareti sondaysa tahri kelimesini tahribat olarak görür ama % işaretini başa koyarsan tahribat kelimesine sondan bakacağı için ribat kelimesini düşünür uymadığı için sonuç döndürmez
-
ohooo :D aramayı halledeli çok oldu, "like" kullanark arama yapmasını bende biliyorum, mysql in fulltext özelliğini kullanıyım dedim, sorunlar çıktı bi sürü, sonra oturdum kendim basit bi fonksiyon yazdım, like ile arama yapan, "hüseyin keleş" aratınca kelimeleri ayrı ayrı aratan falan, güzel bişi oldu,
bu arada;
------------------
ama sen daha gelişmiş bi arama sorgusu istersen bayaa kasman lazım
bi kere öyle bişi yapmaya çalıştıydım 2 gün sürmüştü :)
hani bu google daki gibi
"bunu mu demek istediniz" dalgası :)
------------------
denemek isterseniz http://whosayin.com solda arama yerine "tahribap" yazın aratın;
Acaba aradığın şey tahribat olabilir mi? Sadece ufak bi öneri..
yoğun istek olursa paylaşabilirim fonksiyonları, kendi ürünümdür ;)
-
hotboy bunu yazdı:
-----------------------------ohooo :D aramayı halledeli çok oldu, "like" kullanark arama yapmasını bende biliyorum, mysql in fulltext özelliğini kullanıyım dedim, sorunlar çıktı bi sürü, sonra oturdum kendim basit bi fonksiyon yazdım, like ile arama yapan, "hüseyin keleş" aratınca kelimeleri ayrı ayrı aratan falan, güzel bişi oldu,
bu arada;
------------------
ama sen daha gelişmiş bi arama sorgusu istersen bayaa kasman lazım
bi kere öyle bişi yapmaya çalıştıydım 2 gün sürmüştü :)
hani bu google daki gibi
"bunu mu demek istediniz" dalgası :)
------------------
denemek isterseniz http://whosayin.com solda arama yerine "tahribap" yazın aratın;
Acaba aradığın şey tahribat olabilir mi? Sadece ufak bi öneri..
yoğun istek olursa paylaşabilirim fonksiyonları, kendi ürünümdür ;)
-----------------------------hoş olmuş :)
-
SharpShooter bunu yazdı:
-----------------------------hotboy bunu yazdı:
-----------------------------ohooo :D aramayı halledeli çok oldu, "like" kullanark arama yapmasını bende biliyorum, mysql in fulltext özelliğini kullanıyım dedim, sorunlar çıktı bi sürü, sonra oturdum kendim basit bi fonksiyon yazdım, like ile arama yapan, "hüseyin keleş" aratınca kelimeleri ayrı ayrı aratan falan, güzel bişi oldu,
bu arada;
------------------
ama sen daha gelişmiş bi arama sorgusu istersen bayaa kasman lazım
bi kere öyle bişi yapmaya çalıştıydım 2 gün sürmüştü :)
hani bu google daki gibi
"bunu mu demek istediniz" dalgası :)
------------------
denemek isterseniz http://whosayin.com solda arama yerine "tahribap" yazın aratın;
Acaba aradığın şey tahribat olabilir mi? Sadece ufak bi öneri..
yoğun istek olursa paylaşabilirim fonksiyonları, kendi ürünümdür ;)
-----------------------------hoş olmuş :)
-----------------------------senin 2 günde yaptığın böyle çalışıyormuydu ;)
-
hotboy bunu yazdı:
-----------------------------
SharpShooter bunu yazdı:
-----------------------------hotboy bunu yazdı:
-----------------------------ohooo :D aramayı halledeli çok oldu, "like" kullanark arama yapmasını bende biliyorum, mysql in fulltext özelliğini kullanıyım dedim, sorunlar çıktı bi sürü, sonra oturdum kendim basit bi fonksiyon yazdım, like ile arama yapan, "hüseyin keleş" aratınca kelimeleri ayrı ayrı aratan falan, güzel bişi oldu,
bu arada;
------------------
ama sen daha gelişmiş bi arama sorgusu istersen bayaa kasman lazım
bi kere öyle bişi yapmaya çalıştıydım 2 gün sürmüştü :)
hani bu google daki gibi
"bunu mu demek istediniz" dalgası :)
------------------
denemek isterseniz http://whosayin.com solda arama yerine "tahribap" yazın aratın;
Acaba aradığın şey tahribat olabilir mi? Sadece ufak bi öneri..
yoğun istek olursa paylaşabilirim fonksiyonları, kendi ürünümdür ;)
-----------------------------hoş olmuş :)
-----------------------------senin 2 günde yaptığın böyle çalışıyormuydu ;)
-----------------------------benim yaptığım biraz daha gelişmişiydi.
-
hotb oy bunu yazdı:
-----------------------------arkadaşlar arama yaptırdıım sorgu şu;
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('$aranacak')";
mesela bi yazının içinde tahribat kelimesi geçiyor, tahribat diye aratırsak o yazı çıkıyor, ama tahri diye aratırsak çıkmıyor, bunun için ne yapmalı ne etmeli ?
şunlarıda denedim, bi netice vermedi;
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('*$aranacak*')";
"SELECT * FROM yazilar WHERE MATCH(yazi) AGAINST ('%$aranacak%')";
-----------------------------Bu match against tarzı çok fazla kullanılan bişey değil mysql de , "A kolonunun içinde $y değişkeni geçen kayıtları" aramak için "SELECT * FROM tablo WHERE A LIKE '%$y%' " gibi bir sorgu kullanman daha mantıklı olur
