oracle如何写一个带参数的视图

news/2024/11/2 7:33:05/

--创建参数包

create or replace package view_risk is

  function set_depcode(depcode varchar2) return varchar2;
  function get_depcode return varchar2;
  function set_dmonth(dmonth varchar2) return varchar2;
  function get_dmonth return varchar2;
 
end view_risk;

--创建包体,写赋值方法
create or replace package body view_risk is

  depcodeValue varchar2(5000);
  dmonthValue varchar2(5000);

--depcode
  function set_depcode(depcode varchar2) return varchar2 is
  begin
    depcodeValue := depcode;
    return depcode;
  end;
  function get_depcode return varchar2 is
  begin
    return depcodeValue;
  end;
  
  --dmonth
  function set_dmonth(dmonth varchar2) return varchar2 is
  begin
    dmonthValue := dmonth;
    return dmonth;
  end;
  function get_dmonth return varchar2 is
  begin
    return dmonthValue;
  end;

end view_risk;


---创建视图
Create  or replace  View view_risk_month AS

---视图的sql部分按照你的需求去写,要用的参数就用包体的get方法去取

SELECT C_LOANACCOUNTCODE, c_projectcode,MAX(ID) as id,C_DEPCODE,c_risk_level,c_projectname,C_LOANACCOUNTNAME,c_bistype FROM trisk_apply_his 
  inner join (
  
select REGEXP_SUBSTR(view_risk.get_depcode(), '[^,]+', 1, LEVEL, 'i') AS ADDUSERCD 
  from DUAL
  CONNECT BY LEVEL <= LENGTH(view_risk.get_depcode()) - LENGTH(replace(view_risk.get_depcode(), ',', '')) + 1
  )on instr(',' || c_depcode || ',', ',' || ADDUSERCD || ',') > 0 
  WHERE trisk_apply_his.c_flow_status = 2  AND D_FLOW_FINISH_DATE < to_date(view_risk.get_dmonth(),'yyyy-mm-dd')+1
  group by C_LOANACCOUNTCODE, c_projectcode,C_DEPCODE,c_risk_level,c_projectname,C_LOANACCOUNTNAME,c_bistype
  

  
  ------------ 查询视图
  select * from view_risk_month where view_risk.set_depcode('0_100001,0_100002,0_zsyjysj
') ='0_100001,0_100002,0_zsyjysj' AND view_risk.set_dmonth('2023-05-24')='2023-05-24'
 


http://www.ppmy.cn/news/81838.html

相关文章

SVD求解两组多维点之间的欧式变换矩阵,及halcon代码实现

之前研究了二维点的仿射变换&#xff0c;用解矩阵的方式求解了两组二维点之间的变换矩阵。 学习了下SVD&#xff0c;看到可以用SVD求解两组多维点之间的欧式变换矩阵&#xff0c;当然也是个最优化问题。 这里的变换只有平移和旋转&#xff0c;没有缩放。 一、先说结论&#…

python异常处理名称整理

Python 异常处理 python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。BaseException所有异常的基类UnboundLocalError访问未初始化的本地变量SystemExit

RK3568平台开发系列讲解(驱动基础篇)RK平台IR的使用

🚀返回专栏总目录 文章目录 一、红外遥控配置二、内核驱动2.1 DTS 定义键值表2.2 内核用户码和IR键值的获取2.3 编译 IR 驱动进内核2.4 Android 键值映射三、IR 波形沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将对RK IR的使用进行学习。 一、红外遥控配置 …

新的开始(最小生成树+超级源点)

题目 我们建立一个超级源点&#xff0c;每个点都与超级源点相连&#xff0c;他们的权值为在该点建立发电站的费用&#xff0c;剩下的将其余点相连&#xff0c;权值为连接到已经通电的发电站费用&#xff0c;我们跑一遍最小生成树即可将他们全部相连&#xff0c;并且费用最小。 …

算法时间复杂度

参考视频&#xff1a;https://www.bilibili.com/video/BV14j411f7DJ 目录 1.常数阶O(1) 2.对数阶O(IogN) 3.线性阶O(n) 4.线性对数阶O(nlogN) 5.平方阶O(n^2) 6.立方阶O(n^3) 7.K次方阶O(n^k) 8.指数阶(2^n) 9.阶乘O(n!) 两层for循环 for (int i 1; i <…

uniapp在H5获取当前定位信息不需要SDK可直接获取城市(包括经纬度省市区和市区编码)

前言 最近在做获取用户当前定位信息的时候&#xff0c;发现uniapp官方提供的uni.getLocation(OBJECT)兼容性并不是特别好&#xff0c;光注意事项都是密密麻麻一大堆&#xff0c;在实际使用场景下&#xff0c;效果并不理想&#xff0c;也不是很稳定。于是便重新封装了一下腾讯地…

MyBatis环境搭建+第一个MyBatis程序

目录 1.MyBatis是什么&#xff1f; 2.MyBatis开发环境搭建 3.我的第一个MyBatis程序 1.MyBatis是什么&#xff1f; MyBatis是一款数据库框架&#xff0c;是一款优秀的持久层框架&#xff0c;它不仅支持用户自定义SQL和存储过程&#xff0c;而且还具有高级映射功能。简单来说…

solr快速上手:核心概念及solr-admin界面介绍(二)

0. 引言 上一节&#xff0c;我们简单介绍了solr并演示了单节点solr的安装流程&#xff0c;本章&#xff0c;我们继续讲解solr的核心概念 solr快速上手&#xff1a;solr简介及安装&#xff08;一&#xff09; 1. 核心概念 核心&#xff08;索引/表&#xff09; 在es中有索引…