MySQl 存储过程+游标
DROP PROCEDURE IF exists pro_Insertflightplan_stat;
create procedure pro_Insertflightplan_stat(execdate varchar(10))
begin
declare c varchar(10);
declare s varchar(10);
declare b int default 0; /*是否达到记录的末尾控制变量*/
DECLARE cur_1 CURSOR FOR SELECT distinct t.companyICAO,ScheduleDate from flightplanlibarary_arch t where ScheduleDate = execdate;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1;
OPEN cur_1;
FETCH cur_1 INTO c, s; /*获取第一条记录*/
SET b = 2;
SELECT execdate;
while b<>1 do
SELECT @coumunber:=ttt.count as count,@checkat:=ttt.checkedstate as checkedstate /*变量赋值*/
FROM (
(SELECT COUNT(*) as count,checkedstate
from flightplan_today where EXECDATE= execdate and CHECKEDSTATE in ('0','1','2','3') and companyICAO like c GROUP BY checkedstate )
UNION
(SELECT COUNT(*) as count,'4' as checkedstate FROM flightplanlibarary_arch WHERE id NOT IN (SELECT n.id FROM flightplan_today m INNER JOIN flightplanlibarary n ON m.flightid=n.flightid AND m. depap =n.depap AND m.execdate=n.ScheduleDate AND m.execdate= execdate) and scheduledate= execdate and companyICAO like c )) ttt;
IF @checkat=0
THEN
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(@coumunber,0,0,0,0,s,c);
ELSEIF @checkat = 1
THEN
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(0,@coumunber,0,0,0,s,c);
ELSEIF @checkat = 2
THEN
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(0,0,@coumunber,0,0,s,c);
ELSEIF @checkat = 4
THEN
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(0,0,0,@coumunber,0,s,c);
ELSEIF @checkat= 3
THEN
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(0,0,0,0,@coumunber,s,c);
ELSE
insert into flightplan_stat (unifynum,nounifynum,submitnum,nosubmitnum,unconfirm,execdate,userICAO) VALUES(0,0,0,0,0,s,c);
END IF;
FETCH cur_1 INTO c, s; /*取下一条记录*/
end while;
close cur_1;
end;
#call pro_Insertflightplan_stat('20150331');
MySQl 存储过程+游标的更多相关文章
- MySQL存储过程 游标
MySQL存储过程 游标 如何在存储过程中使用MySQL游标来遍历SELECT语句返回的结果集 MySQL游标简介 要处理存储过程中的结果集,请使用游标.游标允许您迭代查询返回的一组行,并相应地处理 ...
- mysql存储过程游标嵌套循环
自己写的一个mysql存储过程如下: BEGIN DECLARE _did bigint(20);DECLARE _count int;DECLARE s1 int;DECLARE cur_1 CUR ...
- MySQL 存储过程/游标/事务
将会用到的几个表 mysql> DESC products; +------------+--------------+------+-----+---------+-------------- ...
- php调用mysql存储过程游标
<?php $dbtype = 'mysql'; $host = 'localhost'; $dbname = 'test'; $dsn = "$dbtype:host=$host;d ...
- mysql存储过程游标加计划任务事件调度器
存储过程加事件调度器 -- 存储过程 (多个)游标的使用 临时表的使用(让执行时间从一个小时降低到5分钟)DELIMITER $$ DROP PROCEDURE IF EXISTS `eval_cal ...
- mysql 存储过程 游标嵌套
基本表temp 包括 name, type, sendCity, getCity 分别对应物流送货司机名, 倒车的第几段, 发货城市, 收货城市 表结构 -- -------------------- ...
- MySQL 存储过程游标
一.创建游标 游标用declare语句创建.如下面的例子所示: create procedure test2() begin declare cursorTest cursor for select ...
- mysql存储过程 --游标的使用 取每行记录 (多字段)
delimiter $ create PROCEDURE phoneDeal() BEGIN DECLARE id varchar(64); -- id DECLARE phone1 varchar( ...
- mysql 存储过程 -- 游标的使用(备忘)
BEGIN ; DECLARE f_ratio FLOAT DEFAULT 0.8; ); ); DECLARE i_statDate DATE; DECLARE i_accumulateCount ...
- mysql 存储过程 游标的使用 与定义
1.游标的作用及属性 游标的作用就是用于对查询数据库所返回的记录进行遍历,以便进行相应的操作:游标有下面这些属性: a.游标是只读的,也就是不能更新它: b.游标是不能滚动的,也就是只能在一个方向上进 ...
随机推荐
- EditText 双击才能获取点击事件
在获取EditText点击事件的过程中,发现EditText setOnClickListener事件响应中,只有获取焦点的时候才会响应, 如当焦点在别的控件上时,只能先点击获取焦点,第二次点击才会响 ...
- css如此强大你知道吗
看个这个大神纯 CSS 绘制<辛普森一家>人物头像我惊呆了,css如此牛x <div id="wrap"> <div class="cont ...
- pl sql 无法解析指定的连接标识符
使用PLSQL Developer时,“ORA-12154: TNS:无法解析指定的连接标识符”问题的一个解决办法< xmlnamespace prefix ="o" ...
- Java常用类库--观察者设计模式( Observable类Observer接口)
如果要想实现观察者模式,则必须依靠java.util包中提供的Observable类和Observer接口. import java.util.* ; class House extends Obse ...
- adb server is out of date. killing... ADB server didn't ACK * failed to star
The connection to adb is down, and a severe error has occured. [-- :: - HelloOPone] You must restart ...
- Codeblock解决注释乱码问题及在ubuntu中程序运行时乱码问题。
(1)修改源文件保存编码在:settings->Editor->gernal settings>other settings 看到左边的Encoding group Box,改为WI ...
- Drupal7模块multiselect使用
Drupal二次开发的时候,我们时常要使用到多选列表,但是官方默认的多选下拉列表,是在不敢恭维如下图所示: 不过难看不可怕,Drupal有两万第三方模块做支撑,只有你想不到,没有找不到的. 功夫不负有 ...
- 随手写了一个linux服务端与window客户端的epoll程序,当做练习把。
linux服务端:监听链接,处理消息 #include <sys/socket.h> #include <sys/epoll.h> #include <n ...
- Unity cg vertex and fragment shaders(二)
着色器的一般结构: Shader "MyShader/MyShaderName" { Properties { // ... properties here ... } SubSh ...
- 【Java】 实现一个简单文件浏览器(1)
学习Java的Swing的时候写的一个超简单文件浏览器 效果如图: 项目结构: 这里面主要用了两个控件,JTree和JTable 下面先说下左侧的文件树如何实现: 首先是FileTree类,继承于JT ...