Full-Text-Search
搜尋表中的所有列
正如標題所說,我想創建一個查詢,在該表的所有列中搜尋關鍵字。
所以我想簡化這個查詢:
SELECT * FROM tblCustomers WHERE (col1 LIKE '%keyword%' OR col2 LIKE '%keyword%' OR col3 LIKE '%keyword%' OR col4 LIKE '%keyword%') AND (col1 LIKE '%keyword2%' OR col2 LIKE '%keyword2%' OR col3 LIKE '%keyword2%' OR col4 LIKE '%keyword2%');
類似於:
SELECT * FROM tblCustomers WHERE (allColumns LIKE '%keyword%') AND (allColumns LIKE '%keyword2%');
全文搜尋
您可以使用FTS5
CREATE VIRTUAL TABLE customer USING tblCustomers(col1, col2, col3);
那你就
SELECT * FROM tblCustomers WHERE email MATCH 'keyword AND keyword2';
好的,所以如果
PRAGMA
不是一個選項:SELECT sql FROM sqlite_master WHERE tbl_name = 'tblCustomers' AND type = 'table' AND (sql LIKE '%keyword%' OR sql LIKE'%keyword2%')
使用
AND
這兩種關鍵字可能性似乎都行不通,因為兩者都不是真的。