I am pretty sure I'm compiled with PARENTHESIS (is there a way to verify this
via pragma?)
This is the compile line
cl /O2 /D SQLITE_ENABLE_FTS3 /D SQLITE_ENABLE_FTS3_PARENTHESIS /D
SQLITE_ENABLE_RTREE /Fesqlite3.exe shell.c sqlite3.c
It appears that AND is higher prececence now..seems kind of like a major
paradigm shift to change precedence just by enabling parenthetic notation.
Seems like that could break a lot of code.
sqlite> select * from rim_api_fts_db where rim_api_fts_db match 'content OR
373';
target|context|descrip|content 374|link|short|name|link|375
target|context|descrip|content 375|link|short|name|link|374
sqlite> select * from rim_api_fts_db where rim_api_fts_db match 'content 373';
I'm missing a piece here...hopefully this thread is useful to others too...
SQLite version 3.7.4
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE VIRTUAL TABLE RIM_API_FTS_DB USING
...> FTS4
...>
(Target_Name,Target_Context,Target_Description,Target_Content,Target_Link,Pa
...> rent_Short,Parent_Name,Parent_Link,API_Version);
sqlite> insert into rim_api_fts_db values('target','context','descrip','content
374', 'link','short','name','link','375');
sqlite> insert into rim_api_fts_db values('target','context','descrip','content
375', 'link','short','name','link','374');
target|context|descrip|content 375|link|short|name|link|374
sqlite> select * from rim_api_fts_db where rim_api_fts_db match
'API_Version:374';
target|context|descrip|content 375|link|short|name|link|374
sqlite> select * from rim_api_fts_db where rim_api_fts_db match
'Target_Content:374';
target|context|descrip|content 374|link|short|name|link|375
sqlite> select * from rim_api_fts_db where rim_api_fts_db match 'content:374';
target|context|descrip|content 374|link|short|name|link|375
target|context|descrip|content 375|link|short|name|link|374
sqlite> select * from rim_api_fts_db where rim_api_fts_db match '(content:374)';
target|context|descrip|content 374|link|short|name|link|375
target|context|descrip|content 375|link|short|name|link|374
sqlite> select * from rim_api_fts_db where rim_api_fts_db match '"content:374"';
target|context|descrip|content 374|link|short|name|link|375
Do the quotes here say they must appear in the same column? That's how it
appears...without quotes you got both records back.
Michael D. Black
Senior Scientist
Advanced Analytics Directorate
Northrop Grumman Information Systems
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users