• Sql " FREETEXTTABLE " ile full text search arama yapmak

    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
  • You might also like

Bu Blogda Ara

Blogger tarafından desteklenmektedir.