栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

存储过程最大模式匹配

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

存储过程最大模式匹配

您必须重组查询。如果要获得最佳或最大模式,请执行以下操作:

  select  a_val, b_val   into vara_val, varb_val   from       (select NumberPattern ,    a_val,    b_val,    rank() over(order by length(NumberPattern) desc) ranking          from DATA_TABLEwhere CALLNUM  like NumberPattern  || '%' )          where ranking = 1

这会将变量vara_val和varb_val分别设置为值2、2。或者,如果您也想获取该模式,只需声明另一个将保存该值的变量,然后将查询编辑为此:

    select  NumberPattern ,a_val, b_val     into yournew_variable,vara_val, varb_val     from       (select NumberPattern ,    a_val,    b_val,    rank() over(order by length(NumberPattern) desc) ranking          from DATA_TABLEwhere CALLNUM  like NumberPattern  || '%' )          where ranking = 1

这是一个简短的解释:我创建了一个子查询,该子查询由NumberPattern,a_val,b_val和根据其长度的NumberPattern的等级组成。这只会对您提供的CALLNUM参数上存在的模式进行排名。因此,例如,您获得了模式12345、1234,789,并将123456789传递给了CALLNUM参数,由于您的CALLNUM以12345和1234开头,而不是789,因此它将仅对模式12345和1234进行排名。排名为1的子查询中的NumberPattern,a_val和b_val



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/623826.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号