semantickeyphrasetable (Transact-sql)
Sıfır, bir ya da daha fazla satır için belirtilen tablodaki belirtilen sütun ile ilişkili anahtar sözcük içeren bir tablo döndürür.
Normal tablo adı sanki bu satır kümesi işlevi bir select deyiminin from yan tümcesinde başvurulabilir.
Transact-SQL Sözdizim Kuralları
Sözdizimi
SEMANTICKEYPHRASETABLE
(
table,
{ column | (column_list) | * }
[ , source_key ]
)
Bağımsız değişkenler
Tablo
Tam metin olan bir tablo adı ve anlamsal dizin oluşturma etkin.Bu adı bir dört bölüm adı olabilir, ama uzak sunucu adı verilmez.
sütun
Sonuçları döndürülmelidir dizine alınmış sütun adı. Sütun, anlamsal dizin etkinleştirilmiş olması gerekir.column_list
Virgülle ayrılmış ve parantez içine alınmış birkaç sütunlarını gösterir. Tüm sütunları semantik dizin etkinleştirilmiş olması gerekir.*
Semantic Indexing etkin olan tüm sütunlar dahil olduğunu gösterir.source_key
Sonuçları belirli bir satır için istemek için satır için benzersiz anahtar.Anahtar, mümkün olduğunda kaynak tablo tam metin benzersiz anahtar türüne örtülü olarak dönüştürülür. Anahtar, bir sabit veya değişken belirtilebilir ancak bir ifade veya skalar bir sorgu sonucu olamaz. Source_key belirtilmezse, sonuçlar için tüm satır döndürülür.
Dönen Tablo
Aşağıdaki tabloda, bu satır kümesi işlevi anahtar sözcük bilgilerini açıklar.
Sütun_adı |
Tür |
Açıklama |
---|---|---|
column_id |
int |
Hangi geçerli anahtar sözcük çıkarılan ve dizin sütun Kımlığı. col_name ve columnproperty işlevleri ayrıntılı bilgi için bkz: sütun adı column_id ve tersi almak nasıl. |
document_key |
* Bu anahtar, kaynak tablodaki benzersiz anahtar türü eşleştirir. |
Belge veya satır hangi geçerli anahtar sözcük dizini benzersiz anahtar değeri. |
keyphrase |
NVARCHAR |
Anahtar sözcük column_id tarafından tespit ve document_key tarafından belirtilen belgeyle ilişkili sütun bulunamadı. |
Puan |
REAL |
Tüm diğer anahtar sözcük dizini oluşturulmuş sütun aynı belgedeki ilişkileri de bu anahtar sözcük için göreli bir değer. Kesirli ondalık değer aralığında değerdir [0,0, 1.0] burada daha yüksek puan daha yüksek ağırlık temsil eder ve 1.0 mükemmel bir puanı. |
Genel Yorumlar
Daha fazla bilgi için, bkz. Belgeleri ile semantik arama anahtar sözcük bulmak.
Meta veri
Semantik anahtar sözcük çıkarma ve nüfus hakkında durum ve bilgi için aşağıdaki dinamik yönetimi görünümleri sorgu:
Güvenlik
İzinler
Tam metin ve anlamsal dizinler oluşturulduğu temel tablo select izinleri gerektirir.
Örnekler
Örnek 1: belirli bir belgeyi de Top anahtar sözcük bulmak
Aşağıdaki örnek, AdventureWorks örnek veritabanını Production.Document tablonun belge sütunundaki @ DocumentId değişkeni tarafından belirtilen belge üst 10 anahtar sözcük alır. @ DocumentId değişken değeri tam metin dizin anahtar sütunu temsil eder. SEMANTICKEYPHRASETABLE fonksiyonu bu sonuçları verimli bir dizin kullanarak aramak yerine bir tablo taraması alır. Bu örnek, sütun tam metin ve anlamsal dizinleme için yapılandırıldığını varsayar.
SELECT TOP(10) KEYP_TBL.keyphrase
FROM SEMANTICKEYPHRASETABLE
(
Production.Document,
Document,
@DocumentId
) AS KEYP_TBL
ORDER BY KEYP_TBL.score DESC;
SELECT TOP(10) KEYP_TBL.keyphrase
FROM SEMANTICKEYPHRASETABLE
(
Production.Document,
Document,
@DocumentId
) AS KEYP_TBL
ORDER BY KEYP_TBL.score DESC;
Örnek 2: üst belgeleri bulmak o içeren belirli bir anahtar sözcük
Aşağıdaki örnek, "belge sütun AdventureWorks örnek veritabanını Production.Document tablosu aparatı" anahtar sözcük içeren üst 25 belgelerini alır. Bu örnek, sütun tam metin ve anlamsal dizinleme için yapılandırıldığını varsayar.
SELECT TOP (25) DOC_TBL.DocumentID, DOC_TBL.DocumentSummary
FROM Production.Document AS DOC_TBL
INNER JOIN SEMANTICKEYPHRASETABLE
(
Production.Document,
Document
) AS KEYP_TBL
ON DOC_TBL.DocumentID = KEYP_TBL.document_key
WHERE KEYP_TBL.keyphrase = 'Bracket'
ORDER BY KEYP_TBL.Score DESC;
SELECT TOP (25) DOC_TBL.DocumentID, DOC_TBL.DocumentSummary
FROM Production.Document AS DOC_TBL
INNER JOIN SEMANTICKEYPHRASETABLE
(
Production.Document,
Document
) AS KEYP_TBL
ON DOC_TBL.DocumentID = KEYP_TBL.document_key
WHERE KEYP_TBL.keyphrase = 'Bracket'
ORDER BY KEYP_TBL.Score DESC;