1

使用单个 MySQL 过程,我需要编写查询以在获取结果后从表中获取数据(结果也可以是列表),需要将这些选定的行插入到同一数据库的另一个表中。发现难以获取选择查询的结果并获取值以插入另一个表......

如果它只返回一行,我可以执行上述操作,但在我的情况下,它可以返回任意数量的行......

DELIMITER $$ 

USE `scmn_nov21`$$

DROP PROCEDURE IF EXISTS `procedure1`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `procedure1`(
  IN Param1 VARCHAR(255),
  OUT Param2 VARCHAR(255),
  OUT Param3 VARCHAR(255)
)
BEGIN
  DECLARE myvar TEXT;

  SET myvar = (SELECT column1 FROM table1 WHERE column1 =2);

  INSERT INTO table1 (column1,column2,column3)
  VALUES (myvar,'Malaysia','Asia');

  COMMIT;
END$$

DELIMITER ;
4

1 回答 1

0

我相信你可以做一个 Create as select:http ://dev.mysql.com/doc/refman/5.7/en/create-table-select.html

将 malassia 和 asia 作为查询的固定值返回...

于 2017-01-10T12:17:35.763 回答