zoukankan      html  css  js  c++  java
  • mysql xml 参数

    drop PROCEDURE IF EXISTS tt;
    CREATE PROCEDURE tt(
    para text,
    OUT para1 DECIMAL(18, 6),
    OUT para2 DECIMAL(18, 6)
    )
    BEGIN
        DECLARE Count int;
        DECLARE i int;

        DECLARE v_id int;
        DECLARE v_insurance_amount DECIMAL(18, 6);
        DECLARE v_rate DECIMAL(18, 6);

        SET i = 1;
        SET Count = ExtractValue(para, 'count(/list/com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance/id)');
        WHILE i <= Count DO
                SET v_id = ExtractValue(para, '/list/com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance[$i]/id');
                SET v_insurance_amount = ExtractValue(para, '/list/com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance[$i]/insurance_amount');
                SET v_rate = ExtractValue(para, '/list/com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance[$i]/rate');
                IF v_id = 1 THEN
                    SET para1 = v_insurance_amount * v_rate;
                END IF;
                IF v_id = 2 THEN
                    SET para2 = v_insurance_amount * v_rate;
                END IF;
            SET i = i + 1;
        END WHILE;
    end;


    call tt('<list>
      <com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance>
        <id>1</id>
        <insurance_amount>1000</insurance_amount>
        <rate>0.35</rate>
        <premium_amount>0.0</premium_amount>
      </com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance>
      <com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance>
        <id>2</id>
        <insurance_amount>300</insurance_amount>
        <rate>0.4</rate>
        <premium_amount>0.0</premium_amount>
      </com.xk.insalesystem.pojo.premiumCalculation.HouseholdPropertyAddtionalInsurance>
    </list>', @a, @b);
    SELECT @a, @b;

  • 相关阅读:
    系统程序员成长计划并发(二)(下)
    Web开发必知的八种隔离级别
    国产Android视频,Broncho A1
    Android中的BatteryService及相关组件
    Struts2输出XML格式的Result
    系统程序员成长计划并发(三)(上)
    入选”第一期中国最受欢迎50大技术博客”
    Broncho团队招聘应届毕业生(包括大四学生) 2名
    系统程序员成长计划并发(三)(下)
    WordPress MailUp插件‘Ajax’函数安全绕过漏洞
  • 原文地址:https://www.cnblogs.com/zisezhixin/p/5125671.html
Copyright © 2011-2022 走看看