首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MYSQL:存储过程日期操作

MYSQL:存储过程日期操作
EN

Stack Overflow用户
提问于 2012-08-01 13:48:32
回答 1查看 969关注 0票数 0

我想在mysql中创建存储过程,我想在BIGINT中传递两个参数startDate,在INT中传递noOfDays。因此在存储过程中创建临时表并在其中插入日期。例如,如果我通过了8月1日。和10则临时表中的记录应该是从8月1日到8月10日。请对此给出建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-01 14:03:14

以下过程将为您完成此操作:

代码语言:javascript
复制
CREATE PROCEDURE sp_insert_date_data(arg_start_date DATE, arg_no_of_days INT unsigned)
BEGIN
    SET @var_date_cnt = 0;

    DROP TEMPORARY TABLE IF EXISTS tmp_date;
    CREATE TEMPORARY TABLE tmp_date;
    (
        dates DATE NOT NULL
    );

    WHILE(@var_date_cnt < arg_no_of_days)
    DO
        INSERT INTO tmp_date(dates)
        VALUES
        (DATE_ADD(arg_start_date, INTERVAL @var_date_cnt DAY));

        SET @var_date_cnt = @var_date_cnt + 1;
    END WHILE;

    SELECT * FROM tmp_date;
END;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11753227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档