CREATE OR REPLACE FUNCTION
CREATE OR REPLACE FUNCTION SF_Taishou_Ksai_Date(v_receiptNum IN CHAR,
v_his IN CHAR)
RETURN VARCHAR2 DETERMINISTIC IS
RESULT VARCHAR2(50);
v_result_t VARCHAR2(50);
v_tmp_code VARCHAR2(100);
v_uriage_sha_code VARCHAR2(50);
v_Adv_Sha_Code VARCHAR2(50);
v_Taishou_Ksai_Date date;
BEGIN
select *
INTO v_tmp_code, v_uriage_sha_code
from (select REPLACE(atom_concat(Ksai_Sha_Code), ',', ''),
tafd.uriage_sha_code
from TB_ADV_FEE_DETAIL tafd
where tafd.receipt_num = v_receiptNum
and tafd.his = v_his
group by tafd.receipt_num, tafd.his, tafd.uriage_sha_code)
where rownum = 1;
IF (INSTR(v_tmp_code, v_uriage_sha_code) = 0) THEN
IF (INSTR(v_tmp_code, '1') = 0) THEN
v_result_t := '';
ELSE
v_result_t := '1';
END IF;
IF (INSTR(v_tmp_code, '2') = 0) THEN
v_result_t := v_result_t || '';
ELSE
v_result_t := v_result_t || '2';
END IF;
IF (INSTR(v_tmp_code, '3') = 0) THEN
v_result_t := v_result_t || '';
ELSE
v_result_t := v_result_t || '3';
END IF;
IF (INSTR(v_tmp_code, '4') = 0) THEN
v_result_t := v_result_t || '';
ELSE
v_result_t := v_result_t || '4';
END IF;
IF (INSTR(v_tmp_code, '5') = 0) THEN
v_result_t := v_result_t || '';
ELSE
v_result_t := v_result_t || '5';
END IF;
v_uriage_sha_code := substr(v_result_t, 0, 1);
END IF;
/**対象掲載日*/
SELECT Ksai_Date, Adv_Sha_Code
INTO v_Taishou_Ksai_Date, v_Adv_Sha_Code
FROM TB_ADV_FEE_DETAIL
WHERE Receipt_Num = v_receiptNum
AND His = v_his
AND Ksai_Sha_Code = v_uriage_sha_code
AND rownum = 1;
IF (v_Taishou_Ksai_Date = null) THEN
v_Taishou_Ksai_Date := sysdate;
END IF;
/**広告会社名略2 Adv_Sha_Name_Ryaku2*/
SELECT Adv_Sha_Name_Ryaku2
INTO RESULT
FROM TB_ADV_SHA
WHERE Adv_Sha_Code = v_Adv_Sha_Code
AND v_Taishou_Ksai_Date between Apply_Start_Date and Apply_End_Date;
RETURN(RESULT);
END SF_Taishou_Ksai_Date;
/*SELECT BEFORE HOSEI*/
select tafd.Adv_Sha_Name,
SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his),
tafd.*
from TB_ADV_FEE_DETAIL tafd
where tafd.Adv_Sha_Name <>
SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his)
/*HOSEI SQL*/
update TB_ADV_FEE_DETAIL tafd
set tafd.Adv_Sha_Name = SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his),
tafd.Del_Per_Code = 'founder'
where tafd.Adv_Sha_Name <>
SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his),
/*SELECT AFTER HOSEI*/
select tafd.Adv_Sha_Name,
SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his),
tafd.*
from TB_ADV_FEE_DETAIL tafd
where tafd.Adv_Sha_Name <>
SF_Taishou_Ksai_Date(tafd.receipt_num, tafd.his),
and tafd.Del_Per_Code = 'founder';
/*CLEAR HOSEI FLG*/
update TB_ADV_FEE_DETAIL tafd
set tafd.Del_Per_Code = null
where tafd.Del_Per_Code = 'founder';
/*HOSEI SQL*/
最新文章
- word2vec参数调整 及lda调参
- 【转】Python练习,网络爬虫框架Scrapy
- node简单操作mysql的类
- Nginx反向代理tomcat
- 数据库视图 (View)和EntityFramework Code First结合使用
- ArcMap 10.2 crashes during Loading Document launch stage
- 获取网络图片的大小 改变 图片色值 灰度什么的方法集合-b
- Maven 打包可运行 jar
- 学习DNS路上之CloudXNS
- 使用myfocus制作焦点图
- 初次使用Oracle
- WebGIS开源解决方案之环境搭建(二)
- 201621123043 《Java程序设计》第11周学习总结
- 关于JQuery中的ajax请求或者post请求的回调方法中的操作执行或者变量修改没反映的问题
- H5 55-行高
- 【BZOJ3816】【清华集训2014】矩阵变换 稳定婚姻问题
- Processing 编程学习指南 (丹尼尔&#183;希夫曼 著)
- 点击导出table表格
- Actor模型和CSP模型的区别
- “数学口袋精灵”App的第二个Sprint计划----开发日记