说我想检查标题名称是否包含" stack"或包含" over"或包含" flow"。我可以缩短以下代码吗?
select name
from Title
where name like '%stack%' or name like '%over%' or name like '%flow%'
;
谢谢!
答案 0 :(得分:1)
你可以使用REGEXP_LIKE
,但这可能会影响性能,因此您可能希望针对特定用例对其进行测试;
SELECT name
FROM Title
WHERE REGEXP_LIKE(name, '.*(stack|over|flow).*')
...或者如果您希望匹配大小写不敏感,您可以将i
作为第三个参数传递;
SELECT name
FROM Title
WHERE REGEXP_LIKE(name, '.*(stack|over|flow).*', 'i');