Frage

Gibt es eine Möglichkeit, in einer Spalte nach einer bestimmten Zeichenfolge zu suchen?

Ich möchte wie ausgewählte * aus E -Mail_fts suchen, wo E -Mail_fts mit 'a@b.com "oder von:" c@d.com "' übereinstimmen.

Danke im Voraus,

Manoj

War es hilfreich?

Lösung

Stellen Sie sicher, dass Sie im FTS -Index richtige FTS -Spalten erstellen:

CREATE VIRTUAL TABLE email_fts USING fts3(subject, body, "to", "from");

Und dann können Sie einzelne FTS -Spalten durchsuchen:

SELECT  rowid 
FROM    email_fts 
WHERE   "to" MATCH 'a@b.com'

UNION

SELECT  rowid 
FROM    email_fts 
WHERE   "from" MATCH 'c@d.com'

BEARBEITEN: Meine vorherige Antwort hatte eine OR in dem WHERE Klausel. Anscheinend unterstützt SQLite keine Kombination OR Abfragen mit MATCH Bedingungen. Die oben genannten Gewerkschaftswerke.

FTS -Dokumente sind hier, dies ist eines der Beispiele, die in den Dokumenten verwendet werden.

http://sqlite.org/fts3.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top