Fulltext search kullanarak Sql de karakter bazlı arama yapmak ve aradığınız kelime ile eşleşen kayıtları ve eşleşme oranlarını almak için bu arama yöntemi kullanılabilir.
Bu makalemizde 'Northwind' databese indeki 'Product' tablosundaki istediğimiz bir markadaki ürün için açıklama satırlarında arama yapıcaz.
Sorgumuz şöyle olucak :
USE Northwind;
--Arama yapıcağımız değişkeni tanımlanıyoruz
declare @Description nvarchar(200)
declare @Manufacture nvarchar(100)
--Bu kısımda arama yapıcağımız değişkenimize değer atıyoruz
set @Description = 'ipod'
set @Manufacture
SELECT p.ProductName
,p.Description
,FREETXT_TBL.RANK AS Eslesme_Orani
FROM dbo.Product AS p
INNER JOIN FREETEXTTABLE(dbo.Product, Description,
@Description) AS KEY_TBL
ON p.ID = FREETXT_TBL.[KEY]
WHERE p.Manufacture = @Manufacture order by FREETXT_TBL.rank desc
GO
sorgumuz çalıştırıldığında; Ürün adı açıklaması ve eşleşme oranı bilgileri listelenicek.
FREETEXTTABLE 'ın formatına göz atıcak olursak:
FREETEXTTABLE(Tablo_Adı, Aramayapılıcak_Alan,
Aramak_yapılıcak_text) şeklindedir.
ürün tablosu ile de bağlantı kurup marka filtrelemesi yapılıyor.
Umarım faydalı olmuştur arkadaşlar.
Not : Sqlde fulltext search yapabilmek için fulltext katalog tanımlamak ve fulltext için index oluşturmak gerekmektedir.
Kaynak :http://msdn.microsoft.com/en-us/library/ms177652.aspx
Bu makalemizde 'Northwind' databese indeki 'Product' tablosundaki istediğimiz bir markadaki ürün için açıklama satırlarında arama yapıcaz.
Sorgumuz şöyle olucak :
USE Northwind;
--Arama yapıcağımız değişkeni tanımlanıyoruz
declare @Description nvarchar(200)
declare @Manufacture nvarchar(100)
--Bu kısımda arama yapıcağımız değişkenimize değer atıyoruz
set @Description = 'ipod'
set @Manufacture
SELECT p.ProductName
,p.Description
,FREETXT_TBL.RANK AS Eslesme_Orani
FROM dbo.Product AS p
INNER JOIN FREETEXTTABLE(dbo.Product, Description,
@Description) AS KEY_TBL
ON p.ID = FREETXT_TBL.[KEY]
WHERE p.Manufacture = @Manufacture order by FREETXT_TBL.rank desc
GO
sorgumuz çalıştırıldığında; Ürün adı açıklaması ve eşleşme oranı bilgileri listelenicek.
FREETEXTTABLE 'ın formatına göz atıcak olursak:
FREETEXTTABLE(Tablo_Adı, Aramayapılıcak_Alan,
Aramak_yapılıcak_text) şeklindedir.
ürün tablosu ile de bağlantı kurup marka filtrelemesi yapılıyor.
Umarım faydalı olmuştur arkadaşlar.
Not : Sqlde fulltext search yapabilmek için fulltext katalog tanımlamak ve fulltext için index oluşturmak gerekmektedir.
Kaynak :http://msdn.microsoft.com/en-us/library/ms177652.aspx