一个MySQL存储过程的模板
来源:互联网 发布:备案好的域名买卖 编辑:程序博客网 时间:2024/05/16 05:34
BEGIN
DECLARE securitiesnum_v decimal DEFAULT 0.0;
DECLARE assigned_v decimal DEFAULT 0.0;
#将查询到结果赋值到变量
select SUM(securitiesnum) into securitiesnum_v from zxzq_holding where memberid = v_in_memberid;
select assigned * 0.8 into assigned_v from zxzq_information where memberid = v_in_memberid;
#v_in_securitiesnumSum < i.assigned * 0.8的情况
update zxzq_holding h, zxzq_information i
set h.securitiesnum = if(securitiesnum_v > i.assigned * 0.8, h.securitiesnum, 0),
i.assigned = IF(h.securitiesnum > i.assigned * 0.8, h.securitiesnum, TRUNCATE(i.assigned - h.securitiesnum * 1.25,2))
where h.memberid = v_in_memberid and i.memberid = v_in_memberid and i.assigned > 0;
#v_in_securitiesnumSum > i.assigned * 0.8的情况
if securitiesnum_v > assigned_v THEN
WHILE(assigned_v > 0) do
update zxzq_holding h ,zxzq_information i set h.securitiesnum = if(h.securitiesnum > i.assigned * 0.8, TRUNCATE(h.securitiesnum - i.assigned * 0.8,2), 0),
i.assigned = if(h.securitiesnum > i.assigned * 0.8,0, TRUNCATE(i.assigned - h.securitiesnum * 1.25,2)) where h.memberid = v_in_memberid and i.memberid = v_in_memberid and i.assigned > 0;
select assigned into assigned_v from zxzq_information where memberid = v_in_memberid;
END WHILE;
end if;
END
DECLARE securitiesnum_v decimal DEFAULT 0.0;
DECLARE assigned_v decimal DEFAULT 0.0;
#将查询到结果赋值到变量
select SUM(securitiesnum) into securitiesnum_v from zxzq_holding where memberid = v_in_memberid;
select assigned * 0.8 into assigned_v from zxzq_information where memberid = v_in_memberid;
#v_in_securitiesnumSum < i.assigned * 0.8的情况
update zxzq_holding h, zxzq_information i
set h.securitiesnum = if(securitiesnum_v > i.assigned * 0.8, h.securitiesnum, 0),
i.assigned = IF(h.securitiesnum > i.assigned * 0.8, h.securitiesnum, TRUNCATE(i.assigned - h.securitiesnum * 1.25,2))
where h.memberid = v_in_memberid and i.memberid = v_in_memberid and i.assigned > 0;
#v_in_securitiesnumSum > i.assigned * 0.8的情况
if securitiesnum_v > assigned_v THEN
WHILE(assigned_v > 0) do
update zxzq_holding h ,zxzq_information i set h.securitiesnum = if(h.securitiesnum > i.assigned * 0.8, TRUNCATE(h.securitiesnum - i.assigned * 0.8,2), 0),
i.assigned = if(h.securitiesnum > i.assigned * 0.8,0, TRUNCATE(i.assigned - h.securitiesnum * 1.25,2)) where h.memberid = v_in_memberid and i.memberid = v_in_memberid and i.assigned > 0;
select assigned into assigned_v from zxzq_information where memberid = v_in_memberid;
END WHILE;
end if;
END
0 0
- 一个MySQL存储过程的模板
- 一个Mysql的存储过程
- MySQL的一个存储过程
- MYSQL存储过程模板
- MySQL存储过程模板
- 一个简单的MYSQL存储过程
- MYSQL存储过程的一个完整实例
- 自己用的一个mysql存储过程
- MYSQL存储过程的一个完整实例
- 对一个MySQL存储过程的优化
- Mysql 存储过程的一个例子
- mysql定义一个简单的存储过程
- 一个存储过程的 事务模板 跟大家分享
- mysql数据库存储过程带预处理sql的模板
- mysql创建存储过程及事件模板
- mysql数据库存储过程带游标模板
- MySQL的存储过程
- mysql的存储过程
- Android 数据库框架LitePal使用详解
- win8.1环境下的VC14+Apache2.4+php7+Oracle10.2安装配置
- 如何正确(完美)卸载Java/JDK/JRE
- Activity的四种启动模式和onNewIntent()
- Xcode8 适配iOS10时遇见的一些坑
- 一个MySQL存储过程的模板
- Apache 之安装
- 单元测试之Mockito
- redis源码阅读(8)-AOF持久化
- c++/c中函数默认参数的详细解析
- WebView 缓存处理
- java api访问 hbase——demo
- Himi浅谈游戏开发de自学历程!(仅供参考)
- 单工、半双工、全双工