`
taiwei.peng
  • 浏览: 232567 次
  • 性别: 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久,...

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

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

    MySQL5.1中文参

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

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

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

    诊断MySQL存储过程中的排序规则问题

    诊断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