Meine Contains Abfrage funktioniert nicht - bitte helfen :)
-
13-09-2019 - |
Frage
Ich habe einen Volltextkatalog Setup bekommt. Es hat eine einzigartige Schlüsselzahl von 117 mit 19 Artikeln. Die Tabelle hat 19 Zeilen nur.
Die Tabelle hat eine NVARCHAR (50) Feld namens ClientGuid. Es ist ein guid mit einigen seltsamen Text am Ende.
zB ..
- 8b6ef4a504dd1a57f079180e7f6eb4a0 (-)
- 8b6ef4a504dd1a57f079180e7f6eb4a0 (OK)
(und nein, ich nicht, dass Text Felddaten definiert haben - wir Sourcing es von einem 3rd-Party-API
.anways, das ist mein SQL und die Abfrage i dagegen laufen. Wenn ich die Abfrage ausführen, erhalten i ZERO Ergebnisse zurück: (
ALTER FUNCTION [dbo].[Foo_HiJonSkeet]
(
@ClientGuid NVARCHAR(50)
)
RETURNS TABLE
AS
RETURN
(
SELECT KEY_TBL.[Key] as LogEntryId,
KEY_TBL.RANK as Relevance
FROM CONTAINSTABLE(LogEntries, ClientGuid, @ClientGuid) AS KEY_TBL
)
SELECT * FROM Foo_HiJonSkeet('8b')
Irgendwelche Vorschläge? Server ist SQL Server 2008.
Lösung
Sie können versuchen, den folgenden Aufbau:
SELECT * FROM Foo_HiJonSkeet('"8b*"')
Hinzufügen der doppelten Anführungszeichen und ein Sternchen nach dem ursprünglichen Suchbegriff ein. Es sollte funktionieren.
Aber im Fall, wenn alle Suchanfrage ähnlich sein werden, zum Beispiel, das Sie oben gepostet haben, rate ich Ihnen LIKE
Anweisung anstelle der Verwendung von Volltextsuche zu verwenden.