2016-05-05 12 views
0

Ich versuche, jede Zeile einer Tabelle zu extrahieren, deren Spalte (nennen wir es "Absatz") mit einer Suchzeichenfolge übereinstimmt. Der Eintrag "Absatz" kann (und wird immer) Zeilenumbrüche enthalten. Wie kann ich die richtigen Zeilen auswählen?Suche nach Zeichenfolge in mehrzeiligen Datensätzen

Nehmen wir zum Beispiel an, ich suche nach jedem Datensatz, der das Wort "Sprünge" in seiner Spalte "Absatz" enthält. Wie würde ich mich über den folgenden Text enthalten:

Der schnelle braune

Fuchs springt über

der faulen Hund

ich SQLite bin und es muss nicht Regex-Unterstützung.

Antwort

1

könnten Sie verwenden:

SELECT * 
FROM table_name 
WHERE paragraph LIKE '%jump%'; 

SqlFiddleDemo

Beachten Sie, dass dieser Zustand konnte nicht SARGable und seine Leistung ist gering.

1

Sie können eine Abfrage

Model_Name.where("column_name LIKE ?", "%search_value%") 

In Ihrem Fall Abfrage schreiben wie diese

Model.where("paragraph LIKE ?", "%jumps%") 

sollte es die Anordnung der Datensätze zurückgibt, die jumps String in paragraph Spalte hat.

Dies könnte Ihnen helfen ..

Verwandte Themen