Domanda

C'è un modo per cercare una stringa particolare in una colonna?

Voglio cercare come selezionare * da email_fts dove email_fts corrispondono a: "a@b.com" o da: "c@d.com" '

Grazie in anticipo,

Manoj

È stato utile?

Soluzione

Assicurati di creare colonne FTS appropriate nell'indice FTS:

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

E poi puoi cercare singole colonne FTS:

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

UNION

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

MODIFICARE: La mia risposta precedente aveva un OR nel WHERE clausola. Apparentemente SQLite non supporta la combinazione OR domande con MATCH condizioni. Le opere sindacali di cui sopra.

I documenti FTS sono qui, questo è uno degli esempi utilizzati nei documenti.

http://sqlite.org/fts3.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top