欢迎来到代码驿站!

Oracle

当前位置:首页 > 数据库 > Oracle

ORACLE数据库对long类型字段进行模糊匹配的解决思路

时间:2021-04-04 09:02:02|栏目:Oracle|点击:

1.背景介绍

最近在查询数据时,突然遇到了这样一个场景,如何对一个字段类型为long的字段进行模糊匹配。一顿操作以后发现不能使用like进行模糊查询,仔细查看了一下官方文档才发现,long数据类型并不支持该操作。然后就想着将long类型转换为varchar类型然后在进行模糊匹配,通过百度尝试了多种方法,发现效果不太理想。(如果你们发现好的方法欢迎在评论区留言)

2.解决思路

笔者这里采用的思路是:
先创建一个新表,然后将关键信息通过数据类型转换为合适的类型(此处是运用to_lob函数将long类型转换为lob),最后对新表进行模糊匹配。

3.解决实例

需求:对test1表中的b字段进行模糊匹配。
完整代码:

#创建测试表
create table test1(a number,b long);
insert into test1 values(1,'爱我中华');
#创建新表用于模糊匹配
CREATE TABLE test2 (a number,long_b CLOB);
delete from test2;
INSERT INTO test2 (select o.a, TO_LOB(o.b)
  FROM test1 o);
 #进行模糊匹配
select * from test2 where long_b like '%中%' ;

效果截图:
a.测试表数据类型

在这里插入图片描述

b.成功创建新表

在这里插入图片描述

c.模糊匹配结果

在这里插入图片描述

4.后记

好了,以上就是对long类型字段处理的方案,如果各位朋友有更好的方案可以与我沟通交流。

上一篇:详解Oracle 中实现数据透视表的几种方法

栏    目:Oracle

下一篇:ORACLE常见错误代码的分析与解决(三)

本文标题:ORACLE数据库对long类型字段进行模糊匹配的解决思路

本文地址:http://www.codeinn.net/misctech/94658.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有