我们有一个使用SQLite的大约300万条记录的大型数据库。现在我们希望能够搜索数据库并在所有列中搜索术语的出现。我们有一家桌子公司,有几个领域:
EnterpriceNumber || Denomination || Country || Street || HouseNumber || Zipcode || Snippet
其中一个记录的示例可能是:
12345678 || Company B.V. || Netherlands || Examplestreet || 25 || 000AA || Example company, located in the Netherlands.
现在我们正在构建一个API,并希望让我们系统的用户在一个查询中搜索多个列。其中一个查询可以是Examplestreet 25
,Company B.V. Examplestreet 25
或0000AA 25
。
我们当前的查询看起来像这样。当然,它正在查看所有列,因此这是一个较小的版本。
SELECT * FROM company
WHERE (Denomination LIKE '%keyword%')
OR (Street LIKE '%keyword%');
但是,上述搜索查询不会导致上述查询。 怎么能实现这个目标?或者在这个数据库中搜索的最佳实践是什么?我一直在阅读有关虚拟表的内容,但我不太清楚如何在我们的应用程序/数据库中使用它。
感谢您查看此主题