SQL:选择具有相同单词的字符串

Mik*_*ike 5 sql oracle oracle11g

假设我有一个字符串表,如下所示:

VAL
-----------------
Content of values
Values identity
Triple combo
my combo
sub-zero combo
Run Code Online (Sandbox Code Playgroud)

我想找到具有相同词汇的字符串.结果集应该是这样的

VAL                MATCHING_VAL
------------------ ------------------
Content of values  Values identity
Triple combo       My combo
Triple combo       sub-zero combo
Run Code Online (Sandbox Code Playgroud)

或者至少是这样的.你能帮我吗?

Gor*_*off 7

一种方法是使用hack进行正则表达式:

select t1.val, t2.val
from t t1 join
     t t2
     on regexp_like(t1.val, replace(t2.val, ' ', '|');
Run Code Online (Sandbox Code Playgroud)

您可能希望案例也相同:

     on regexp_like(lower(t1.val), replace(lower(t2.val), ' ', '|');
Run Code Online (Sandbox Code Playgroud)