`
taiwei.peng
  • 浏览: 233957 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

mysql 无参存储过程

阅读更多
DROP PROCEDURE  IF EXISTS `Sum_Month_Cus_Count`;

CREATE  PROCEDURE `Sum_Month_Cus_Count`()
BEGIN
    declare v_cur_Date date;
    declare v_pre1_Date date;
    declare v_year,v_month,v_count int;
    set v_cur_Date = CURDATE();
    set v_pre1_Date = date_add(v_cur_Date, interval -1 day) ;
    set v_year =year(v_pre1_Date);
    set v_month = month(v_pre1_Date);
    select count(syear) into v_count from rpl_month_cycle where syear =v_year and smonth=v_month;
    if v_count=0 THEN
       INSERT into rpl_month_cycle(syear,smonth) values(v_year,v_month);
    end if;
    delete from rpl_cus_month_sum where syear =v_year and smonth=v_month;

    select v_year,v_month ,ta.groupId,IFNULL(tb.addNum,0),0
    from cus_group as ta
    left join
    (
       select egroupId,count(egroupId) as addNum from cus_costomer_up_history where year(changeDate) = v_year and month(changeDate)=v_month group by egroupId
    ) as tb
    on ta.groupId = tb.egroupId
    where ta.IsSum =1;

    insert into rpl_cus_month_sum
    select v_year,v_month ,ta.groupId,IFNULL(tb.addNum,0),0
    from cus_group as ta
    left join
    (
       select egroupId,count(egroupId) as addNum from cus_costomer_up_history where year(changeDate) = v_year and month(changeDate)=v_month group by egroupId
    ) as tb
    on ta.groupId = tb.egroupId
    where ta.IsSum =1;
   
    update rpl_cus_month_sum as ta,
    (  
       select groupId,count(groupId) as totalNum from cus_customer where State=1 group by groupId
    ) as tb
    set ta.totalNum = tb.totalNum 
    where ta.groupId = tb.groupId
    and ta.syear = v_year
    and ta.smonth=v_month;  
end
分享到:
评论

相关推荐

    MySQL存储过程实战SQL脚本

    能学到什么:可以学会如何使用MySQL创建无参存储过程、有参存储过程、IF-ELSE存储过程、WHILE循环存储过程、CASE-WHEN条件控制存储过程、REPEAT UNTIL循环存储过程、LOOP循环存储过程。 阅读建议:提前安装好MySQL的...

    c++实现调mysql存储过程

    c++实现调mysql存储过程,实现存储过程的出参入参,可以支持查询多数据返回,还有存储过程的复杂数据的增删改等

    在MySQL中创建带有IN和OUT参数的存储过程的方法

    在MySQL 入门教程中,我们能够看到很多关于如何创建储存过程 和如何利用 IN 和 OUT 参数调用存储过程的示例。这些示例都很简单,能够很好的帮助你理解 MySQL 中创建带参数存储过程的语法。这些示例已在 MySQL 5.5 中...

    mysql存储过程之返回多个值的方法示例

    IN参数用于向存储过程传递输入值,而出参(OUT或INOUT)则用于存储过程内部计算的结果,可以在过程执行完毕后将这些值返回给调用者。 以下是一个名为`get_order_by_cust`的存储过程示例,它接受一个客户编号(IN...

    JDBC调用MySQL5存储过程[文].pdf

    本文将详细讲解如何使用JDBC调用MySQL5的存储过程,包括存储过程的创建、JDBC调用过程以及处理输入输出参数。 首先,我们创建一个简单的MySQL5数据库表`user`,用于演示存储过程的插入操作: ```sql CREATE TABLE ...

    job调用的存储过程

    例如,Oracle的DBMS_SCHEDULER,SQL Server的SQL Server Agent,MySQL的Event Scheduler,它们允许用户设置定时任务,以定期执行存储过程。 回到描述中的"job调用的存储过程",这意味着存在一个或多个job,它们在...

    详解MySql存储过程参数的入门使用

    存储过程 in参数 的使用 IN参数只用来向过程传递信息,为默认值。 -- 存储过程中 in 参数的 使用 DELIMITER ;; CREATE PROCEDURE name_in(IN `time` VARCHAR(50)) BEGIN SELECT NOW() ,`time`; END ;; CALL name_in...

    数据库原理与应用实验报告

    - 示例中的"PROC_系部读者借阅信息"是一个无参存储过程,用于查询计算机系读者在2014-1-1之后借阅的图书信息。存储过程的定义如下: ```sql CREATE PROC PROC_系部读者借阅信息 AS BEGIN SELECT rname, bno, ...

    mysql创建存储过程实现往数据表中新增字段的方法分析

    本文实例讲述了mysql创建存储过程实现往数据表中新增字段的方法。分享给大家供大家参考,具体如下: 需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作;若该字段不存在,则新增) 百度了n久,...

    详解MySQL存储过程参数有三种类型(in、out、inout)

    MySQL存储过程是数据库管理系统中一组为了完成特定功能的SQL语句集,它可以被多次调用,减少了代码重复,提高了程序的可重用性和执行效率。在MySQL中,存储过程的参数有三种类型:in、out、inout,它们分别对应不同...

    实验八 存储过程的使用(学生).doc

    在实验中,学生需要学会如何在 XSGL 数据库中创建存储过程,例如创建一个无参存储过程 StuScoreInfo,查询学生的学号、姓名、性别、课程名称、考试成绩等信息。 本实验旨在让学生掌握创建存储过程的基本方法,并...

    MySQL5.1中文参

    MySQL 5.1中文参是一份详尽的数据库管理指南,专为那些使用MySQL 5.1版本的用户设计。MySQL是一种广泛应用于Web应用程序的开源关系型数据库管理系统(RDBMS),以其高效、稳定和易用性而备受赞誉。这份中文参考手册...

    MySql的存储过程学习小结 附pdf文档下载

    存储过程是一种存储在数据库库中的程序(就像正规语言里的子程序一样),准确的来说,MySql支持的“routine(例程)”有两种:一是我们说的存储过程,二是在其它sql语句中可以返回值的函数(使用起来和mysql预装载的...

    MySQL 5.1官方简体中文参考手册

    11.5. 列类型存储需求 11.6. 选择正确的列类型 11.7. 使用来自其他数据库引擎的列类型 12. 函数和操作符 12.1. 操作符 12.1.1. 操作符优先级 12.1.2. 圆括号 12.1.3. 比较函数和操作符 12.1.4. 逻辑操作符 12.2. ...

    基于Php mysql存储过程的详解

    1. **无参存储过程**: 在实例一中,我们创建了一个名为`myproce`的存储过程,它不接收任何参数。这个存储过程简单地插入了一条新的用户记录。创建存储过程的SQL语句使用了`CREATE PROCEDURE`关键字,定义了一个名...

    CallableStatement的使用(存储过程).docx

    例如,这里创建了三个不同的存储过程:p1(无参数)、p2(带入参)和 p3(带入参及返回值)。每个过程都包含插入操作和查询操作。 2. **调用存储过程**: - 在 MySQL 客户端,你可以直接使用 `CALL` 语句来执行...

    01mysql查缺补漏(补充知识点)

    mysql查缺补漏(补充知识点)(begin end可以省略、调用无参存储过程注意事项、定义条件和处理)

    Mybatis传list参数调用oracle存储过程的解决方法

    "Mybatis调用Oracle存储过程传List参数解决方法" Mybatis是当前最流行的持久层框架之一,它提供了强大的数据访问和操作功能。但是,如何将List类型参数传递给Oracle存储过程,实现批量插入数据却是一个棘手的问题,...

    java jsp实现mysql备份还原 代码

    - **构造器**:通常有一个无参的构造器。 - **序列化**:可以实现 `Serializable` 接口以支持序列化。 - **事件监听**:可以通过实现特定接口来处理事件监听。 在本例中,我们使用了一个名为 `Mysql` 的 Java Bean ...

    mysql网络数据库指南(中文版) part1

    MySQL 是完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。它具有功能强、使用简便、管理方便、运行速度快、安全可靠性强等优点,用户可利用许多语言编写访问MySQL ...

Global site tag (gtag.js) - Google Analytics