【发布时间】:2021-11-09 15:19:58
【问题描述】:
为什么在这个查询中我得到两个使用大小写的结果? 我以为在满足第一个条件之后,就会出现中断,而第二个根本不检查
select KOD from ap_magazyny mag where 1 =
case
when (value1 like 'ZZ%' and mag.KOD like (select SUBSTR(value1,INSTR(value1,'/',1)+1,3) from dual)) then 1
when (atrybut_t01 = value2 AND rownum = 1) then 1
else 0
end
【问题讨论】:
-
您有两行符合条件。有什么问题?
-
case 在列级别上运行。
-
是否可以在匹配到第一个条件后打破 case 语句?
-
这是两个单独的 KOD,匹配条件 ZG0 和 ZG1
-
@GeorgeJoseph In date like
select KOD from ap_magazyny mag where 1 = case when (atrybut_t01 = 5902596218362 AND rownum = 1) then 1 when ('ZZT/ZG1/00023/07/2021' like 'ZZ%' and mag.KOD like (select SUBSTR('ZZT/ZG1/00023/07/2021',INSTR('ZZT/ZG1/00023/07/2021','/',1)+1,3) from dual)) then 1 else 0 endAre only 1 match value in first condition its ZG1