• oracle存储过程记录


    1、TASK_INSTANCE_PUTLINE:自治事务
    PRAGMA AUTONOMOUS_TRANSACTION;
    自治事务
    自治事务的特点
    第一,这段程序不依赖于原有Main程序,比如Main程序中有未提交的数据,那么在自治事务中是查找不到的。
    第二,在自治事务中,commit或者rollback只会提交或回滚当前自治事务中的DML,不会影响到Main程序中的DML。
    2、EXECUTE IMMEDIATE…INTO…USING
    SELECT_SQL VARCHAR2(200) := 'SELECT COUNT() FROM EDATA_TASK_INSTANCE T WHERE T.INSTANCEID=:INSTANCEID’;
    EXECUTE IMMEDIATE SELECT_SQL INTO IS_EXISTS USING INSTANCEID;
    含义:将USING 后的值(INSTANCEID)传给sql语句(SELECT_SQL—:INSTANCEID)最后再将返回的结果给INTO(IS_EXISTS)
    其中IS_EXISTS可以是值也可以是sql语句,这个是COUNT(
    )给一个值。
    3、select … into … from
    SELECT COUNT(*) INTO ACCDATA_COUNT FROM IMP_ACCDATA
    和2差不多 先执行select … from … 将查询出的结果给into …
    4、RAISE 抛异常
    5、REPLACE函数:替换字符串
    replace(原字段,“原字段旧内容“,“原字段新内容“)
    6、NVL:空值转换函数
    NVL( string1, replace_with)。它的功能是如果string1为NULL,则NVL函数返回replace_with的值
    7、DECODE
    有两种用法
    (1) decode(expression,value,result1,result2)
    如果expression=value,则输出result1,否则输出result2
    (2) decode(expression,value1,result1,value2,result2,value3,
    result3…,default)
    如果expression=value1,则输出result1,expression=value2,输出reslut2,expression=value3,输出result3,
    若expression不等于所列出的所有value,则输出为default
    去重方法
    ROWID:伪列,只保留ROWID最小的一条,便去重了
    DELETE IMP_EBKDATA E WHERE ROWID>(SELECT MIN(ROWID) FROM IMP_EBKDATA EE WHERE E.CUSTID=EE.CUSTID AND E.STATUS=EE.STATUS);
    8、TO_DATE:日期和字符转换函数
    将日期以后面指定的方式转为字符串:to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’)
    9、LAST_DAY函数返回指定日期对应月份的最后一天
    获取当前日期的最后一天
    10、LEASE函数
    LEASE是PLSQL中的一个内置函数,用于从某些表达式的给定列表中返回最小值。这些表达式可以是数字,字母等。
    用法:
    LEAST(exp1, exp2, … exp_n)
    11、stuff
    删除指定长度的字符,并在指定的起点处插入另一组字符。
    用法:STUFF ( character_expression , start , length ,character_expression )

  • 相关阅读:
    【Vue3】第十四部分 父子组件传参
    影响mysql数据的三个性能指标(TPS\QPS\IOPS)
    iOS 横竖屏处理方案
    webpack知识点
    ThreadLocal详解
    tensorflow学习
    Go :测试终结器用于微小的组合分配(附完整源码)
    【Node.js】Express-Generator:快速生成Express应用程序的利器
    RMI反序列化分析
    2024.6.5 刷题总结
  • 原文地址:https://blog.csdn.net/wswxy52188/article/details/126705679