freetexttable (Transact-sql)

Bir işlev içinde kullanılan from yan , a Transact-SQLgerçekleştirmek için select deyimi bir SQL Servertam metin üzerinde tam metin arama dizin karakter tabanlı veri türleri içeren sütunlar. Bir tablo sıfır, bir veya daha fazla satır anlamı ve sadece tam ifade, belirtilen metin ile eşleşen değerleri içeren bu sütunlar için bu işlevi freetext_string. Normal tablo adı sanki freetexttable başvurulmaktadır.

freetexttable eşleşme olarak aynı tür yararlı freetext (Transact-sql),

Sorguları freetexttable kullanarak değeri (rank) ve her satır için tam metin anahtarını (key) derecelendirme uygunluğu döndürür.

[!NOT]

Tam metin arama tarafından desteklenen biçimleri hakkında bilgi için SQL Serverbakın Tam metin arama sorgusuyla.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

FREETEXTTABLE (table , { column_name | (column_list) | * } 
          , 'freetext_string' 
     [ , LANGUAGE language_term ] 
     [ , top_n_by_rank ] )

Bağımsız değişkenler

  • table
    Tam metin için işaretlenmiş tablonun adı Sorgulanıyor. tableveya view bir tek, iki veya üç bölüm veritabanı nesnesi adı olabilir. Görünüm sorgularken, tek bir tam metin dizinlenmiş temel tablo dahil.

    tablebir sunucu adı belirtemezsiniz ve bağlantılı sunucuları sorgular kullanılamaz.

  • column_name
    Bir veya daha fazla tam metin dizini oluşturulmuş sütunlar from yan tümcesinde belirtilen tablonun adıdır. The columns can be of type char, varchar, nchar, nvarchar, text, ntext, image, xml, varbinary, or varbinary(max).

  • column_list
    Bir virgülle ayrılmış birden fazla sütun belirtilen gösterir. column_listayraç içine alınmalıdır. Sürece language_termbelirtilen tüm sütunları dili column_listaynı olmalıdır.

  • *
    Tam metin arama için kayıtlı tüm sütunları aramak için kullanılması gerektiğini belirtir verilen freetext_string. Sürece language_termbelirtilirse, tüm tam metin dizini oluşturulmuş sütunlar tablosunda dili aynı olması gerekir.

  • freetext_string
    Metin içinde arama column_name. Sözcükler, ifadeler veya cümleler, dahil herhangi bir metin girilebilir. Maçlar, herhangi bir terim ya da herhangi bir terim formları bulunur, tam metin dizini oluşturulur.

    Tersine CONTAINS içinde arama koşul ve kullanıldığında bir anahtar kelime olduğunu freetext_stringkelime 've' bir sözcük, kabul edilir ya da stopword, atılır.

    AĞIRLIK, BİÇİMLERİYLE, joker, yakın ve diğer sözdizimi kullanımını izin verilmez. freetext_stringkaynaklandığını ve eşanlamlılar geçirilen wordbroken olduğunu.

  • DİLlanguage_term
    Kaynakları sözcük bölme, doğan ve eş anlamlılar sözlüğü ve stopword kaldırma sorgu bir parçası olarak kullanılan dildir. Bu parametre isteğe bağlıdır ve bir dize, tamsayı veya onaltılık değeri, bir dil yerel ayar tanıtıcısını (LCID) karşılık belirtilebilir. Eğer language_termbelirtilirse, temsil ettiği dil arama koşulu öğelerin tümüne uygulanır. Herhangi bir değer belirtilirse, sütun tam metin dili kullanılır.

    Farklı dillerde belgeler olarak büyük ikili nesneler (BLOB'lar) tek bir sütunda birlikte depolanıyorsa, verilen belgenin yerel ayar tanıtıcısını (LCID) içeriği dizine eklemek hangi dilde kullanılacağını belirler. Böyle bir sütun sorgularken belirterek LANGUAGE language_termiyi bir eşleşme olasılığını artırabilir.

    Bir dizge olarak belirtilen language_term karşılık ad sütun değeri sys.syslanguages (Transact-sql)Uyumluluk Görünümü. Dize gibi tek tırnak işareti içine alınmalıdır 'language_term'. Bir tamsayı olarak belirtildiğinde language_termdilini tanımlayan gerçek LCID '. Onaltılı değer olarak belirtildiğinde language_term0 x LCID onaltılık değerini izliyor. Onaltılık değeri, sekiz basamak, öndeki dahil aşmamalıdır.

    Değer ise çift baytlı karakter kümesi (dbcs) biçimi, Microsoft  SQL ServerUnicode'a dönüştürür.

    Belirtilen dil veya orada geçerli değilse kaynak yok bu dile karşılık gelen yüklü SQL Serverhata veriyor. Nötr dil kaynakları kullanmak için 0x0 olarak belirtmeniz language_term.

  • top_n_by_rank
    Sadece belirtir n azalan, en yüksek sırada eşleşmeler döndürülür. Yalnızca bir tamsayı değeri, geçerli n, belirtilen. Eğer top_n_by_rankbirleştirilir diğer parametrelerle sorgu, aslında tüm yüklemler eşleşen satır sayısından daha az satır geri dönebilirler. top_n_by_rankyalnızca en alakalı hits hatırlatarak tarafından sorgu performansını artırmak sağlar.

Açıklamalar

Tam metin doğrulamaları ve çalışma from yüklemi örtülü tek bir tabloda fonksiyonları. Birden fazla tabloyu temel arama yapmak için iki veya daha fazla tablodan bir ürün bir sonuç kümesi üzerinde aramak için from yan tümcesinde birleştirilen tablo kullanın.

freetexttable freetext yüklemi aynı arama koşullarını kullanır.

CONTAINSTABLE gibi döndürülen tablo adlı sütunları vardır key ve SIRASI, değerleri sıralama satır uygun satırları edinileceği ve kullanılacağı sorgu içinde başvurulan.

İzinler

freetexttable, yalnızca belirtilen tabloyu veya tablonun başvurulan sütunları uygun select ayrıcalıklarına sahip kullanıcılar tarafından çağrılabilir.

Örnekler

A.Bir iç birleşim freetext kullanma

Aşağıdaki örnek, kategori adını ve açıklamasını ilgili tüm kategorilerden verir sweet, candy, bread, dry, ya meat.

USE AdventureWorks2012
GO

SELECT FT_TBL.Description
    ,KEY_TBL.RANK
FROM Production.ProductDescription AS FT_TBL 
    INNER JOIN FREETEXTTABLE(Production.ProductDescription,
    Description, 
    'high level of performance') AS KEY_TBL
ON FT_TBL.ProductDescriptionID = KEY_TBL.[KEY]
ORDER BY RANK DESC
GO

USE AdventureWorks2012
GO

SELECT FT_TBL.Description
    ,KEY_TBL.RANK
FROM Production.ProductDescription AS FT_TBL 
    INNER JOIN FREETEXTTABLE(Production.ProductDescription,
    Description, 
    'high level of performance') AS KEY_TBL
ON FT_TBL.ProductDescriptionID = KEY_TBL.[KEY]
ORDER BY RANK DESC
GO

B.Dil ve en yüksek sırada maçları belirtme

Aşağıdaki örnek, aynı ve kullanımını gösterir LANGUAGE language_term ve top_n_by_rank parametreleri.

USE AdventureWorks2012
GO

SELECT FT_TBL.Description
    ,KEY_TBL.RANK
FROM Production.ProductDescription AS FT_TBL 
    INNER JOIN FREETEXTTABLE(Production.ProductDescription,
    Description, 
    'high level of performance',
    LANGUAGE N'English', 2) AS KEY_TBL
ON FT_TBL.ProductDescriptionID = KEY_TBL.[KEY]
ORDER BY RANK DESC
GO

USE AdventureWorks2012
GO

SELECT FT_TBL.Description
    ,KEY_TBL.RANK
FROM Production.ProductDescription AS FT_TBL 
    INNER JOIN FREETEXTTABLE(Production.ProductDescription,
    Description, 
    'high level of performance',
    LANGUAGE N'English', 2) AS KEY_TBL
ON FT_TBL.ProductDescriptionID = KEY_TBL.[KEY]
ORDER BY RANK DESC
GO

[!NOT]

DİL language_term parameter kullanmak için gerekli değildir top_n_by_rank parametresi.

Ayrıca bkz.

Görevler

Tam metin arama sorguları (Visual Veritabanı Araçları) oluştur

Başvuru

fulltext Katalog (Transact-sql) oluştur

fulltext INDEX (Transact-sql) oluştur

(Transact-sql) içerir

CONTAINSTABLE (Transact-sql)

freetext (Transact-sql)

Satır kümesi işlevler (Transact-sql)

select (Transact-sql)

NEREDE (Transact-sql)

Kavramlar

Tam metin arama ile başlamak

Oluşturma ve tam-metin katalogları yönetme

Oluşturun ve tam metin dizinleri Yönet

Tam metin arama sorgusuyla

rütbe sunucu yapılandırma seçeneği precompute