SQLite - 在文本字段中提取单个单词

时间:2015-02-03 13:00:06

标签: sql sqlite

我有一个充满纯文本的数据库。我想要一个查询来查找特定子词的类似单词。像建议或猜测的东西。

this is a database filled with data.

我要找的子词是da

现在查询的结果应该只是一列单个单词,如:

database
data

1 个答案:

答案 0 :(得分:0)

首先,您需要找到符合' da'的行。您可以使用LIKE '%da%'REGEXP 'da'之类的内容(请参阅this SO answer to know how to install REGEXP extension)。

然后你应该提取与你的模式相对应的单词' da'。这就是SQLite没有直接解决方案的地方。在其他DBMS中,您具有substring(string from pattern)等功能(例如in PostgreSQL)。你在SQLite中没有这种功能。

您可以在与extension-functions.ccontribs中此this regexp operator for SQLite文件中的函数相同的基础上开发此类函数。但是在这里你不需要运算符但是需要返回匹配的函数。我还没有找到现有的扩展名。

也许你可以使用SQLite Full-Text Search extension标记符来提取你想要的单词。