Oracle存储过程&执行存储过程带日期参数
1、上一篇出的是Oracle数据库创建存储过程不带参数,直接执行,这种满足日常查询,这篇是带日期的调用
那么如果有一些常用查询或者计算需要传参数的,则需带参和传参 ,我先用日期参数做为示例
CREATE OR REPLACE PROCEDURE PROC_TEMP1(S_DATE IN VARCHAR2,E_DATE IN VARCHAR2) AS
BEGIN
EXECUTE IMMEDIATE 'CREATE TABLE TEMP1 NOLOGGING AS
SELECT T.CREATE_STAFF,T.CREATE_ORG_ID,COUNT(1) ORDER_CNT
FROM TABLE_NAME T
WHERE T.CREATE_ORG_ID<>''0''
AND T.CREATE_STAFF<>''0''
AND T.SYS_SOURCE=''0''
AND T.CREATE_DATE >= TO_DATE('''||S_DATE||''',''YYYY-MM-DD'')
AND T.CREATE_DATE <=TO_DATE('''||E_DATE||''',''YYYY-MM-DD'')
GROUP BY T.CREATE_STAFF,T.CREATE_ORG_ID';
END;
绿色字体中就是存储过程创建的关键字;
红色字体就是入参,和参数的使用,传日期参数的时候,传VARCHAR2字符类型,然后使用TO_DATE转化为日期类型,就可以查出数据,非常好用。
2、执行存储过程,代入日期
BEGIN PROC_TEMP1('2021-07-01','2021-07-02'); END;
这就可以了
创建和调用都有
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构