博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle判断一个字符串中是否包含另外一个字符串
阅读量:6881 次
发布时间:2019-06-27

本文共 748 字,大约阅读时间需要 2 分钟。

hot3.png

select * from a where instr(a,b)>0;用于实现B字段是A字段中的某一部分的时候,要论顺序或者要相邻的字符。

如果想要不论顺序或者不相邻的字符时,定义函数可以实现:

select * from a where instr(a,b)>0;这个只能实现B字段是A字段中的某一部分的时候。

如果想要不论顺序或者不相邻的字符时,定义函数可以实现
 create or replace function checks(v_a varchar2,v_b varchar)
 return number
 as
    num number;
    cou number;
 begin
    num := -1;
    cou:=0;
    for i in 1..length(v_b) loop
       if instr(v_a,substr(v_b,i,1))>0 then
    cou:=cou+1;
       end if;
    end loop;
    if cou=length(v_b) then
    return cou;
    end if;
    dbms_output.put_line(cou||'    '||length(v_b));
 return num;
 end;

结果:

SQL> select * from a;

A          B

---------- ----------
asdf       sd
asdf       ad
asdf       df
asdf       asdf

SQL> select * from a where checks(a,b)>0;

A          B

---------- ----------
asdf       sd
asdf       ad
asdf       df
asdf       asdf

转载于:https://my.oschina.net/u/2381604/blog/537520

你可能感兴趣的文章
我的友情链接
查看>>
OCP之六 管理ORACLE用户
查看>>
java反射创建带构造参数的类 并执行方法
查看>>
有了测试工具,傻瓜仍是傻瓜
查看>>
我的友情链接
查看>>
java初学的一些小问题
查看>>
探究C/C++可变参数
查看>>
配置管理小报100707:如何用shell命令安装perl模块?
查看>>
[spdy]初识——比http好在哪里
查看>>
C++ 11 特征之删除默认成员函数
查看>>
PHPCMS笔记之幻灯片 查询所选栏目有图片的文章并控制显示数量
查看>>
MySQL 8 在 Windows 下安装及使用
查看>>
swagger配置即使用
查看>>
webrtc Codec生成相关
查看>>
Python加密—AES加密解密
查看>>
Ubuntu虚拟机无法连接到网络
查看>>
springboot 系列教程二:常用starter介绍
查看>>
根据用户ID获取权限的方法
查看>>
Linux 指令篇:使用者管理--sudo
查看>>
(八)Flask 学习 —— 关注者,联系人和好友
查看>>