It appears that I cannot use MATCH more than once per query. It also looks like
I can't use it if prefaced with OR or NOT.
For example, this works:
SELECT T01_fts.docid FROM T01_fts JOIN T01 ON T01_fts.docid = T01.rowid
WHERE T01.hasPic = 0 AND T01_fts.words MATCH 'SBNTKN*'
These do not:
SELECT T01_fts.docid FROM T01_fts JOIN T01 ON T01_fts.docid = T01.rowid
WHERE T01.hasPic = 0 OR T01_fts.words MATCH 'SBNTKN*'
SELECT T01_fts.docid FROM T01_fts JOIN T01 ON T01_fts.docid = T01.rowid
WHERE T01.hasPic = 0 AND (T01_fts.words MATCH 'SBNTKN*' OR T01_fts.words MATCH
'CTLTKN*' )
Obviously I can manually rewrite the queries by hand. The trick is building
these strings from a bundle of nested logic which has no knowledge about the
database structure. I could probably get it working with UNION and INTERSECT,
but I want to avoid those in the interest of speed.
Is this something I need to work around, or might it be supported in future
releases of sqlite?
And an entirely separate question: Is there currently a way, or will there soon
be a way to clone prepared statements?
Thanks
dw
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users