首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Mysql -打印@loop_start_date到@loop_end_date之间的所有值

Mysql -打印@loop_start_date到@loop_end_date之间的所有值
EN

Stack Overflow用户
提问于 2018-06-19 04:08:44
回答 1查看 50关注 0票数 0

我正在尝试:

将@loop_start_date之间的所有值打印到@loop_end_dateloop_start_date此处应增加1,直到loop_start_date=loop_end_date

我在下面试过了,但是Mysql说

     #1064 - You have an error in your SQL syntax; check the manual that 
        corresponds to your MySQL server version for the right
 syntax to use near 'BEGIN   Declare @user_id int' at line 3

以下是过程代码

CREATE PROCEDURE generatePayscale

BEGIN
    Declare @user_id int;
    Declare @office_id int;
    Declare @loop_start_date Date;
    Declare @loop_end_date Date;
    SET @user_id = 1287;
    SET @office_id = 8;
    SET @loop_start_date = '2018-06-02'; 
    SET @loop_end_date = '2018-06-06';


    WHILE(@loop_start_date < @loop_end_date) do 
        SELECT old_paysetupid 
        FROM   personneltransfer personnelid=@user_id 
        AND    pt.transferdate>@loop_start_date 
    END WHILE;
 END
EN

回答 1

Stack Overflow用户

发布于 2018-06-19 04:17:42

这可能会给你指明正确的方向,我会改变一些事情。添加了BEGIN。然后为每个var添加了声明。然后,在from之后需要一个where

SET @user_id = 1287;
SET @office_id = 8;
SET @loop_start_date = '2018-06-02'; 
SET @loop_end_date = '2018-06-06';

WHILE(@loop_start_date < @loop_end_date) do
BEGIN 
    SELECT old_paysetupid 
    FROM   personneltransfer where personnelid=@user_id 
    and pt.transferdate>@loop_start_date 
END WHILE;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50916767

复制
相关文章

相似问题

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