DECLARE CURSOR C_ABC ISSELECT DEFSTR1 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR1 VARCHAR2(128);--存储变量 OUT_DEFSTR1 DATE;--结果变量
BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR1;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; OUT_DEFSTR1:=TO_DATE(SUBSTR(IN_DEFSTR1,1,INSTR(IN_DEFSTR1,' ')-1),'yyyy/mm/dd'); DBMS_OUTPUT.put_line(OUT_DEFSTR1); END LOOP; CLOSE C_ABC; END;
DECLARE CURSOR C_ABC ISSELECT DEFSTR1 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 'AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR2 VARCHAR2(128);--存储变量 OUT_DEFSTR2 VARCHAR2(128);--结果变量 --过渡变量 S1 VARCHAR2 ( 128 ); S2 VARCHAR2 ( 128 ); N1 INTEGER; BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR2;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; S1:=SUBSTR(IN_DEFSTR2,INSTR(IN_DEFSTR2,' ')+1,5); N1:=LENGTH(S1); CASE N1 WHEN4THEN OUT_DEFSTR2:='0'||S1; ELSE OUT_DEFSTR2:=S1; ENDCASE; DBMS_OUTPUT.put_line(OUT_DEFSTR2); END LOOP; CLOSE C_ABC; END;
余额
交易金额
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
DECLARE CURSOR C_ABC ISSELECT DEFSTR7 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR4 VARCHAR2( 128 );--存储变量 OUT_DEFSTR4 NUMBER(12,2);--结果变量 BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR4;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; OUT_DEFSTR4:=TO_NUMBER(IN_DEFSTR4); DBMS_OUTPUT.put_line(OUT_DEFSTR4); END LOOP; CLOSE C_ABC; END;
DECLARE CURSOR C_ABC ISSELECT DEFSTR6,DEFSTR5 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR5 VARCHAR2( 128 );--存储变量 OUT_DEFSTR5 VARCHAR2( 128 );--结果变量
--过渡变量 S1 VARCHAR2(128); BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR5,S1;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; IN_DEFSTR5:=REPLACE(IN_DEFSTR5,' ',''); IF IN_DEFSTR5 IN('支出','收入') THEN OUT_DEFSTR5:=IN_DEFSTR5; ELSE IF S1 LIKE('%充值%') THEN OUT_DEFSTR5:='支出'; ELSIF S1 LIKE('%还款%') THEN OUT_DEFSTR5:='支出'; ELSIF S1 LIKE('%收益发放%') THEN OUT_DEFSTR5:='收入'; ELSIF S1 LIKE('%工资理财%') THEN OUT_DEFSTR5:='支出'; ELSIF S1 LIKE('%提现%') THEN OUT_DEFSTR5:='收入'; ELSIF S1 LIKE('%退款%') THEN OUT_DEFSTR5:='收入'; ELSIF S1 LIKE('%余额宝-转出到余额%') THEN OUT_DEFSTR5:='收入'; ELSIF S1 LIKE('%海尔血氧仪%') THEN OUT_DEFSTR5:='支出'; ELSE OUT_DEFSTR5:='未知'; DBMS_OUTPUT.put_line(OUT_DEFSTR5||S1); END IF; END IF; END LOOP; CLOSE C_ABC; END;
币种
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
DECLARE CURSOR C_ABC ISSELECT DEFSTR6 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR6 VARCHAR2( 128 );--存储变量 OUT_DEFSTR6 VARCHAR2( 128 );--结果变量
--过渡变量 S1 VARCHAR2(128); BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR6;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; OUT_DEFSTR6:='CNY'; END LOOP; CLOSE C_ABC; END;
DECLARE CURSOR C_ABC ISSELECT DEFSTR3 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR8 VARCHAR2( 128 );--存储变量 OUT_DEFSTR8 VARCHAR2( 128 );--结果变量
BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR8;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; IN_DEFSTR8:=REPLACE(IN_DEFSTR8,' ',''); CASE IN_DEFSTR8 WHEN'银华基金管理股份有限公司'THEN OUT_DEFSTR8 :='ALI'; WHEN'余额宝'THEN OUT_DEFSTR8 :='ALI'; WHEN'中国农业银行'THEN OUT_DEFSTR8 :='ABC'; WHEN'王兴强'THEN OUT_DEFSTR8 :='ALI'; ELSE OUT_DEFSTR8 :=IN_DEFSTR8; ENDCASE; DBMS_OUTPUT.PUT_LINE(OUT_DEFSTR8); END LOOP; CLOSE C_ABC; END;
交易单号
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
DECLARE CURSOR C_ABC ISSELECT DEFSTR10 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 ' AND ODS_ALI.DEFSTR8 =' '; IN_DEFSTR9 VARCHAR2( 128 );--存储变量 OUT_DEFSTR9 VARCHAR2( 128 );--结果变量
BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR9;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; OUT_DEFSTR9:=IN_DEFSTR9; DBMS_OUTPUT.PUT_LINE(OUT_DEFSTR9); END LOOP; CLOSE C_ABC; END;
交易备注
取商品说明
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
DECLARE CURSOR C_ABC ISSELECT DEFSTR5 FROM ODS_ALI WHERE ODS_ALI.DEFSTR1<>'交易时间 'AND ODS_ALI.DEFSTR9<>'交易关闭 '; IN_DEFSTR10 VARCHAR2( 128 );--存储变量 OUT_DEFSTR10 VARCHAR2( 128 );--结果变量
BEGIN OPEN C_ABC; LOOP FETCH C_ABC INTO IN_DEFSTR10;--提取游标 IF C_ABC % NOTFOUND THEN EXIT; END IF; OUT_DEFSTR10:=IN_DEFSTR10; DBMS_OUTPUT.PUT_LINE(OUT_DEFSTR10); END LOOP; CLOSE C_ABC; END;