• sql语句循环执行


    场景:不能一次性批量更新完成,修改或查询数据是依赖于上一条数据执行完成后,拿到上一条数据比较。

    又不想通过代码去写一个junit完成语句。所以,写了个mysql存储过程。。

    其中

    #删除过程
    DROP PROCEDURE IF EXISTS updateStock;
    #创建过程,待参数。入参用IN声明。出参用OUT CREATE PROCEDURE updateStock (IN c_num INTEGER ) BEGIN SET @i
    = 0;# 变量赋值 WHILE @i < c_num DO # 结束循环的条件: 当i大于5时跳出while循环 SET @i = @i + 1; #临时变量累加 update t_his_ab a LEFT JOIN t_his_ab b on a.stock_no_full = b.stock_no_full and a.account_id = b.account_id and a.settle_date = DATE_ADD(b.settle_date,INTERVAL 1 DAY) set a.build_no = b.build_no, a.build_time=b.build_time, a.liquidation_time=b.liquidation_time, a.date_delivery_last=b.liquidation_time, a.stock_status = b.stock_status where a.build_no is null and b.build_no is not null; select count(0) into @co from t_his_account_stock a where a.build_no is null ; SELECT @i, @co; #输出当次结果。 END WHILE;# 结束while循环 END;

    # 调用过程 CALL updateStock(
    1);
  • 相关阅读:
    fenby C语言P21
    fenby C语言 P20
    fenby C语言 P19
    fenby C语言 P18
    fenby C语言 P17
    fenby C语言 P16
    fenby C语言 P15
    fenby C语言 P14
    Python学习之路:subprocess模块和面向对象
    Python学习之路:XML模块
  • 原文地址:https://www.cnblogs.com/a393060727/p/14923315.html
Copyright © 2020-2023  润新知