如何在SQL中使用LIKE和多个搜索模式?

如何在SQL中使用LIKE和多个搜索模式?,sql,oracle,pattern-matching,sql-like,nested-queries,Sql,Oracle,Pattern Matching,Sql Like,Nested Queries,我有一个有多个表的数据库。我想检索两列,如下面的示例所示: 表名:stemp 栏目名称:strsmall 值:x po r 表名:btemp 列名:str 值:xam 权力 强大的 克斯特拉 戳 我想要像这样的输出 strsmall str x xam 功率 p强大 x xtra p戳 实际数据库中的每个表中都有数百行。我使用的数据库是oracle。您可以使用以下类似语句: select s.strsmall, b.str from stemp s inner join btemp b on b

我有一个有多个表的数据库。我想检索两列,如下面的示例所示:

表名:stemp
栏目名称:strsmall
值:x
po
r

表名:btemp
列名:str
值:xam
权力
强大的
克斯特拉
戳

我想要像这样的输出

strsmall str
x xam
功率
p强大
x xtra
p戳


实际数据库中的每个表中都有数百行。我使用的数据库是oracle。

您可以使用以下类似语句:

select s.strsmall, b.str
from stemp s
inner join
btemp b on b.str like s.strsmall || '%'
试试这个:

select strsmall, str from stemp, btemp
where strsmall like '%'||str||'%'
or str like '%'||strsmall||'%'

你到现在都试过了。你能发布这个查询吗?Oracle中的连接运算符是
|
+
用于将数字相加。这只会选择与字符串str和strsmall完全匹配的一个。这是不正确的,我从我的查询窗口复制并试图更改它以匹配您的问题后,在匆忙中出错了谢谢这是我想要的