oracle如何判断两个字符串包含

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle如何判断两个字符串包含相关的知识,希望对你有一定的参考价值。

请问oracle有没有相关函数 判断字符串 之间的包含关系?
比如 '33,79,12,40' 和 字符串 '12,33,40,79' 是相等的 请问有没有什么办法判断?有没有内置的函数?

oracle如何判断两个字符串包含

    函数:
    function HasSameChar(str1,str2:string):boolean;
    var
    i,j:Integer;
    blChk:Boolean;
    begin
    blChk:=False;
    for i:=0 to Length(str1) do
    begin
    for j:=0 to Length(str2) do
    begin
    if str1[i]=str2[j] then
    begin
    blChk:=True;
    Break;
    end;
    end;
    if blChk then Break;
    end;

    Result:=blChk;
    end;

    调用:
    var blChk:boolean;
    begin
    blChk:=HasSameChar(\'hello\',\'world\');
    if blChk then showmessage(\'有交集\')
    else showmessage(\'没有交集\');
    end;

参考技术A 这个真没有,自己写函数解决吧。

oracle 查询条件中判断两个字段相等时 一个字段为空则跳过

where 语句后面是 t.dataTime=t2.dataTime 如何进行这样的判断:
当t.dataTime或者 t2.dataTime 为空时 则跳过相等判断,如果两个量都有值则进行判断

在线等....急......

--楼下的用的函数 是当某值为空 赋给什么值 不符合楼主的要求
--我帮你改下 执行时 先判断全面的条件 就过滤掉了空值 还有‘’ 和null 是不一样的 所以都要过滤
--希望解决了楼主的问题
where t<>'' and t is not nul and t2<>'' and t2 is not null
and t.dataTime=t2.dataTime追问

(关联条件 or (t.dataTime is null or t2.dataTime is null)) 问题这样解决了,不过还是谢谢了

追答

你这样写 括号有什么意义呢? 有没有想过?
如果你这样是解决了问题 那么你描述就有问题

追问

果然还是不行哇....问题是你上面那个写法把空值过滤掉了...我联立查询空值也要查出来...

追答

我有点搞不清楚楼主的需求了 你能重新描述一下吗?
或者把结果截图给我看也可以

追问

时间都有的时候

存在时间没有的时候

追答

--那就不要那样写 用left join 我不知道你哪个表是主表 如果主表不是t 就换个顺序 你这样就不是---过滤空值了 不明白再问我
select 1 from t left join t2 on
t.dataTime=t2.dataTime

参考技术A 使用nvl函数进行空值转换,如:nvl(t.dataTime, sysdate)=nvl(t2.dataTime,sysdate),要不就写个子查询把空值过滤掉追问

nvl(t.dataTime, sysdate)=nvl(t2.dataTime,sysdate) 这样子的话....如果我t.dataTime 不为空,但是t2.dataTime为空,则t和t2数据匹配就完全不对了啊

追答

不太明白你说的,空值本来就应该和具体的值匹配不上啊

追问

(关联条件 or (t.dataTime is null or t2.dataTime is null)) 问题这样解决了,不过还是谢谢了

追答

楼主要的是全外连接吧,full out jion

参考技术B 你可以where后面限定t.dataTime, t2.dataTime 不为空啊

以上是关于oracle如何判断两个字符串包含的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 判断表字段里字符串是不是含有汉字

mysql 判断字符串中是不是有汉字

oracle 存储过程 判断字段中是不是包含指定的字符,该怎么解决

Mysql字符串字段,如何判断是不是包含某个字符串

oracle 中如何判断字符串中是不是有某一个字符

【python】判断两个字符串的包含关系?