Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Azure SQL Managed Instance
SQL-Datenbank in Microsoft Fabric
Gibt alle eigenschaftsbezogenen Inhalte im Volltextindex einer angegebenen Tabelle zurück. Dies schließt alle Daten ein, die zu Eigenschaften gehören, die von der diesem Volltextindex zugeordneten Sucheigenschaftenliste registriert wurden.
sys.dm_fts_index_keywords_by_property ist eine dynamische Managementfunktion, die es Ihnen ermöglicht zu sehen, welche registrierten Immobilien von IFilters zum Indexzeitpunkt emittiert wurden, sowie den genauen Inhalt jeder Eigenschaft in jedem indexierten Dokument.
Um alle Inhalte auf Dokumentenebene (einschließlich eigentumsbezogener Inhalte) einzusehen, siehe sys.dm_fts_index_keywords_by_document.
Um höherwertige Volltext-Indexinformationen anzusehen, siehe sys.dm_fts_index_keywords.
Informationen zu Sucheigenschaftenlisten finden Sie unter Search Document Properties with Search Property Lists.For information about search property lists, see Search Document Properties with Search Property Lists.
Syntax
sys.dm_fts_index_keywords_by_property
(
DB_ID('database_name')
, OBJECT_ID('table_name')
)
Argumente
DB_ID('database_name')
Ein Aufruf an die DB_ID Funktion.
DB_ID ist int. Diese Funktion akzeptiert einen Datenbanknamen und gibt die Datenbank-ID zurück, die sys.dm_fts_index_keywords_by_property zur Suche nach der angegebenen Datenbank verwendet wird. Wenn database_name nicht angegeben ist, wird die aktuelle Datenbank-ID zurückgegeben.
OBJECT_ID('table_name')
Ein Aufruf an die OBJECT_ID Funktion.
OBJECT_ID ist int. Diese Funktion akzeptiert einen Tabellennamen und gibt die Tabellen-ID der Tabelle zurück, die den Volltextindex zur Inspektion enthält.
Zurückgegebene Tabelle
| Spaltenname | Datentyp | Nullfähig | Description |
|---|---|---|---|
keyword
1 |
varbinary(128) | No | Die hexadezimale Darstellung des Schlüsselworts, das im Volltextindex gespeichert ist. |
display_term
1 |
nvarchar(4000) | No | Die Klartextform des Schlüsselworts. Dieses Format wird vom internen Format abgeleitet, das im Volltextindex gespeichert ist. |
column_id |
int | No | Die ID der Spalte für die Volltextindizierung des aktuellen Schlüsselworts. |
document_id |
bigint | Ja | Die ID des Dokuments bzw. der Zeile für die Volltextindizierung des aktuellen Ausdrucks. Diese ID entspricht dem Volltextschlüsselwert dieses Dokuments bzw. dieser Zeile. |
property_id |
int | Ja | Interne Eigenschafts-ID der Sucheigenschaft im Volltextindex der Tabelle, die Sie im Parameter OBJECT_ID angegeben haben. |
10xFF steht für das Spezialzeichen, das das Ende einer Datei oder eines Datensatzes anzeigt.
Wenn einer Sucheigenschaftenliste eine angegebene Eigenschaft hinzugefügt wird, registriert die Volltext-Engine die Eigenschaft und weist ihr eine interne Eigenschaften-ID zu, die für diese Eigenschaftenliste spezifisch ist. Die interne Eigenschaften-ID stellt eine ganze Zahl dar und ist für eine bestimmte Sucheigenschaftenliste eindeutig. Wenn eine bestimmte Eigenschaft für mehrere Sucheigenschaftenlisten registriert wird, kann für jede Sucheigenschaftenliste eine andere interne Eigenschaften-ID zugewiesen werden.
Note
Die interne Eigenschafts-ID unterscheidet sich von der Eigenschafts-Ganzzahlkennung, die beim Hinzufügen der Eigenschaft zur Sucheigenschaftsliste angegeben wird. Weitere Informationen finden Sie unter Suchen von Dokumenteigenschaften mithilfe von Suchlisten zu Eigenschaften.
Um die Verbindung zwischen property_id dem Grundstücksnamen zu sehen, siehe sys.registered_search_properties.
Bemerkungen
Diese dynamische Verwaltungsansicht kann Fragen wie die folgenden beantworten:
Welcher Inhalt wird in einer angegebenen Eigenschaft für eine angegebene DocID gespeichert?
Wie gängig ist eine angegebene Eigenschaft im Hinblick auf indizierte Dokumente?
Welche Dokumente enthalten eigentlich eine angegebene Eigenschaft? Das ist nützlich, wenn eine Abfrage einer bestimmten Sucheigenschaft kein Dokument zurückgibt, das Sie erwartet haben.
Wenn die Volltextschlüssel-Spalte ein ganzzahliger Datentyp ist, wie empfohlen, wird sie document_id direkt auf den Volltextschlüsselwert in der Basistabelle abgebildet.
Im Gegensatz dazu stellt die Volltext-Schlüssel-Spalte, wenn sie einen nicht-ganzzahligen Datentyp verwendet, document_id den Volltextschlüssel in der Basistabelle nicht dar. In diesem Fall müssen Sie, um die Zeile in der Basistabelle zu identifizieren, die von zurückgegeben wird dm_fts_index_keywords_by_property, diese Ansicht mit den von sp_fulltext_keymappings zurückgegebenen Ergebnissen verbinden.
Speichern Sie jedoch zuvor die Ausgabe der gespeicherten Prozedur in eine temporäre Tabelle. Dann kannst du die Spalte document_id von dm_fts_index_keywords_by_property mit der DocId Spalte verbinden, die durch dieses gespeicherte Verfahren zurückgegeben wird. Eine Zeitstempel-Spalte kann keine Werte zur Einfügungszeit empfangen, da sie automatisch von SQL Server generiert werden. Daher muss die Zeitstempelspalte in varbinary(8) -Spalten konvertiert werden. Das folgende Beispiel zeigt die erforderlichen Schritte: In diesem Beispiel ist @table_id die ID Ihrer Tabelle, database_name der Name Ihrer Datenbank und table_name der Name Ihrer Tabelle.
USE database_name;
GO
CREATE TABLE #MyTempTable
(
docid INT PRIMARY KEY,
[key] INT NOT NULL
);
DECLARE @db_id AS INT = DB_ID(N'database_name');
DECLARE @table_id AS INT = OBJECT_ID(N'table_name');
INSERT INTO #MyTempTable
EXECUTE sp_fulltext_keymappings @table_id;
SELECT *
FROM sys.dm_fts_index_keywords_by_property(@db_id, @table_id) AS kbd
INNER JOIN #MyTempTable AS tt
ON tt.[docid] = kbd.document_id;
GO
Erlaubnisse
Erfordert SELECT eine Genehmigung für die Spalten, die vom Volltextindex abgedeckt sind, sowie CREATE FULLTEXT CATALOG Berechtigungen.
Examples
Im folgenden Beispiel werden Schlüsselwörter in der Author-Eigenschaft im Volltextindex der Production.Document-Tabelle der AdventureWorks2025-Beispieldatenbank zurückgegeben. Das Beispiel verwendet das Alias KWBPOP für die von Das Beispiel zurückgegebene sys.dm_fts_index_keywords_by_property Tabelle. Das Beispiel verwendet innere Joins, um Spalten aus sys.registered_search_properties und sys.fulltext_indexes zu kombinieren.
-- Once the full-text index is configured to support property searching
-- on the Author property, return any keywords indexed for this property.
USE AdventureWorks2025;
GO
SELECT KWBPOP.*
FROM sys.dm_fts_index_keywords_by_property(DB_ID(), OBJECT_ID('Production.Document')) AS KWBPOP
INNER JOIN sys.registered_search_properties AS RSP
ON ((KWBPOP.property_id = RSP.property_id)
AND (RSP.property_name = 'Author'))
INNER JOIN sys.fulltext_indexes AS FTI
ON ((FTI.[OBJECT_ID] = OBJECT_ID('Production.Document'))
AND (RSP.property_list_id = FTI.property_list_id));
GO
Verwandte Inhalte
- Volltextsuche
- Verbesserung der Leistung von Volltextindizes
- sp_fulltext_keymappings (Transact-SQL)
- sys.dm_fts_index_keywords_by_document (Transact-SQL)
- sys.dm_fts_index_keywords (Transact-SQL)
- sys.registered_search_properties (Transact-SQL)
- sys.registered_search_property_lists (Transact-SQL)
- Dokumenteigenschaften mit Such-Eigenschaftslisten durchsuchen