Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用来自不同表的数据的存储过程_Mysql_Stored Procedures_Procedure - Fatal编程技术网

Mysql 使用来自不同表的数据的存储过程

Mysql 使用来自不同表的数据的存储过程,mysql,stored-procedures,procedure,Mysql,Stored Procedures,Procedure,我有一个存储过程。如何调用从不同表中获取数据的过程。idGroup是来自不同表的列名 DROP PROCEDURE IF EXISTS `simpleproc`; DELIMITER ;; CREATE DEFINER=`sa`@`192.168.1.253` PROCEDURE `simpleproc`(IN idGroup INT, IN groupName varchar(20),IN beginDate date, IN weekday1 INT, IN weekday2 INT

我有一个存储过程。如何调用从不同表中获取数据的过程。idGroup是来自不同表的列名

    DROP PROCEDURE IF EXISTS `simpleproc`;
DELIMITER ;;
CREATE DEFINER=`sa`@`192.168.1.253` PROCEDURE `simpleproc`(IN idGroup INT, IN groupName varchar(20),IN beginDate date, IN weekday1 INT, IN weekday2 INT, IN lessonCount INT)
BEGIN
DECLARE i int;
DECLARE name1 int;
DECLARE price int;

SET  i:=1;
WHILE i<=lessonCount  DO
  SET beginDate:=DATE_ADD(beginDate,INTERVAL 1 DAY);
  IF WEEKDAY(beginDate) in(weekday1,weekday2) THEN
    SET name1:=groupName+i; 
    SET price:=price DIV 8;
    insert into lessons (lessonName, idGroup, lessonPrice, datePassed) 
      values (name1,idGroup,price,begindate);
  END IF;
  SET i:=i+1;
END WHILE;
END
;;
DELIMITER ;
DROP过程(如果存在)`simpleproc`;
分隔符;;
CREATE DEFINER=`sa`@`192.168.1.253`PROCEDURE`simpleproc`(在idGroup INT、groupName varchar(20)、beginDate date、weekday1 INT、weekday2 INT、lessonCount INT中)
开始
声明i int;
声明name1int;
申报价格;
集合i:=1;

而要调用的iSyntex是:
callsimpleproc(1,'abc','2015-10-1012:12:43',2,3,4)如果您希望基于某些表值迭代该值,那么您可以编写一个存储过程,该存储过程将有一个光标来选择和获取某些变量中的值,根据您的条件,您可以使用调用simpleproc(1,'abc',2015-10-10 12:12:43',2,3,4)调用上述存储过程