用于选择多个值的Oracle sql命令

时间:2016-12-08 06:04:13

标签: oracle oracle11g

我正在Oracle中进行查询,我需要在like子句中输入多个参数。它可以是:

Select id from  student where name like 'Tom'
union
Select id from  student where name like 'Amy'
union
Select id from  student where name like 'Jany'

这会产生更多查询,我想要一些查询,如...

Select id from  student where name like ('Tom','Amy','Jany')

是否可以在Oracle11g中或类似于此查询的内容

2 个答案:

答案 0 :(得分:2)

Oracle REGEXP_LIKE在这里工作

<强> REGEXP_LIKE

Select id from  student where REGEXP_LIKE(name,'(Tom|Amy|Jany)')

答案 1 :(得分:1)

我们无法将IN用于LIKE条件。

简单的方法是使用OR,但这对编码来说非常繁琐。

SQL>select id from student where name like '%Tom%' or name like '%Amy%' or name like '%Janny%';

参考:AskTom:Like Operator with IN clause