sql - 如何查询一个字段中的一些字符?
问题描述
我的数据库是 Oracle 11g。
我想在 sql 中做一个 in 查询。查询条件是匹配某个字段的一些字符:
description
CWLV321900017391;EFHU3832239
CWLV321900017491;ERHU3832239
CWLV321900017591;ERHU3832239
CWLV321900017691;ERHU3832239
我的查询是这样的:
select * from product where description in ('CWLV321900017391', 'CWLV321900017491');
它在结果中不返回任何记录。
我期望结果如下:
description
CWLV321900017391;EFHU3832239
CWLV321900017491;ERHU3832239
如何通过 SQL 获取?
谢谢。
解决方案
您正在使用IN
在表中搜索部分字符串匹配description
。这不会返回结果,因为IN
只会匹配精确值。
相反,实现此目的的一种方法是使用带有 的LIKE
运算符%
:
select *
from product
where (description LIKE 'CWLV321900017391%' OR
description LIKE 'CWLV321900017491%');
%
末尾的 表示任何内容都可以跟在指定的文本之后。
这将返回以or开头的description
任何内容。 CWLV321900017391
CWLV321900017491
顺便说一句,如果您的搜索词出现在描述字段中的任何位置,您将需要%
在搜索词的每一端使用 a:
description LIKE '%CWLV321900017391%' OR description LIKE '%CWLV321900017491%'
推荐阅读
- api - OpenAPI 与 JSON:API
- r - 用 r 中的另一个数据替换列表中的每一行
- java - java构建过程中生成源是什么意思
- javascript - JavaScript,在异步函数中返回函数回调
- java - 无法转换为 class 。. . 是 loader 的未命名模块
- ghost-blog - 如何解决错误 503 Service Unavailable (Ghost)
- c# - ASP.NET Core 使用自定义 HttpClientHandler 模拟 HttpClient
- reactjs - 使用多个(最新)第 3 方反应库反应“未捕获的不变违规:元素类型无效”
- python - 尼泊尔数字的 Python 正则表达式
- javascript - 如何在不使用 javascript 和 django 刷新页面的情况下获取数据?