SQL字符串搜索:将一个表索引到另一个表

时间:2015-08-11 19:14:13

标签: sql oracle

我正在尝试搜索特定的字符串。因此,我没有将关键字放在字符串本身(例如select * from report r where Upper (r.summary) like '%FRANK%')上,而是将所有单词保存在表格中。现在如何索引该关键字表。

实施例: 'Frank'被添加到" Keywordtable",现在我想看到"报告"摘要表中提到了该关键字," Frank"。有可能吗?

为了更清楚

select *
from contact_document r
where Upper (r.summary) like '%CANCER%'

但关键字保存在带有疾病列表的表格中,称为"疾病表"

select m.disease, m.rowid 
from diseasetable m

我希望每次运行该脚本时,它都会返回contact_document diseasetable上列出r.summary上列出的任何疾病Select name from Leave where leave!=null;

1 个答案:

答案 0 :(得分:1)

我认为您需要这样的查询:

SELECT *
FROM
    yourTableOfStrings s
  JOIN
    yourTableOfKeywords k
  ON s.string Like CONCAT('%', k.keyword, '%');

[SQL Fiddle Demo]