2

Wie kann ich nur den Satz auswählen, der das gesuchte Wort enthält, nicht den gesamten Inhalt der Dokumente. Ich benutze folgende Abfrage, bekomme aber den ganzen Inhalt von Dokumenten oder PDF-Dateien.Abfragen und Bedingungen in Sql Store-Prozedur oder in Funktionen

Hinweis: Ich verwende die Volltextsuche in SQL Server.

Hier möchte ich nur bestimmte Satz, der 'Lektion' enthält.

ODER

Wenn jemand gesucht Lektion *

es Lektion Mathe zurückkehren sollte, Lektion Englisch, Lektion arabicum was auch immer.

Jeder Vorschlag wird geschätzt, weil es für mich und alle anderen nützlich sein kann. Dank

+0

Sie können eine Variable erstellen und in Prozedur ausführen. Was genau ist das Problem? – NEER

+0

Das eigentliche Problem ist die Suche nach Inhalten in Datei mit Store-Prozedur –

+0

@NEER Ich bearbeite Frage, um es einfach zu machen –

Antwort

2

Sie kann Sie, dass bei einer LIKE Abfrage - im Wesentlichen:

declare @query nvarchar(100) = N'helpful'; 
select Id from DocumentDetailContent 
where DocumentText like N'%' + @query + N'%' 

aber es klingt wie "full text search" könnte eine bessere Datenbank-Option sein. Allerdings würde ich in Frage stellen, ob SQL Server wirklich die richtige Lösung dafür ist - "Elasticsearch" oder ein ähnlicher Textindex-Server könnte viel besser sein.

+0

.danke für Vorschläge. Ja, ich stimme dir stark zu. Ich mag elastische Suche und das ist wirklich viel besser Ansatz. aber die Zeit ist kurz für mich und dort ist SQL Server empfohlen und ich werde die Volltextsuche bevorzugen. Ich bin nicht sicher über wie, weil seine Leistung langsam ist. können wir die Volltextsuche für diesen Zweck verwenden und ich brauche einige gute und einfache Hilfsmittel wie Video-Tutorial, um die Volltextsuche zu verstehen. –

+0

"können wir die Volltextsuche für diesen Zweck verwenden" Ja, aber es wird mehr Platz benötigen als hier; lese die docs –

+0

Ich habe diesen Weg mit Indexierung getan. –