sql - 包含在 Oracle 11.2 中
问题描述
是否可以使用类似于CONTAINS
新 Oracle 的功能?我有 11.2 并且想做这样的事情:
select * from cars
inner join customers on customers.as_id = cars.as_id
where cars.type like 'AUDI' and contains(request, customers.name, 1) > 0;
所以据我所知,我不能LIKE
在这里使用,因为customers.name
它不是固定值。有没有办法为旧的 Oracle 找到一些解决方法?
解决方案
您可以LIKE
按如下方式使用:
select *
from cars
inner join customers on customers.as_id = cars.as_id
where cars.type = 'AUDI' -- You can use = here
and request like '%' || customers.name || '%';
注意: contains
子句用于在 Oracle Text 索引中查找特定字符串。它不能应用于普通列。
推荐阅读
- azure-devops - 参数中的变量似乎没有被库中的值替换
- swift - 如何从子类调用 MKTileOverlay “url”函数?获取 EXC_BAD_INSTRUCTION
- c# - 如何序列化 ASP.NET Core 中的封闭对象属性?
- c# - 是否应该在接口中声明所有公共方法?
- javascript - 将 socket.io 客户端指向 heroku 服务
- ruby-on-rails - JSON API 防止包含循环关系
- jquery - Django字典没有传递给模板
- selenium-webdriver - 如何使用 Selenium WebDriver处理标签内的 AJAX 弹出窗口?
- excel - 使用冒泡方法的列表框排序跳过列表框中的第一项
- nativescript - 在 Nativescript Angular 项目中使用 Nativescript Core 插件