我当前的代码是:
DELIMITER \\
CREATE PROCEDURE sample (IN _car VARCHAR(15))
BEGIN
DECLARE _a INTEGER;
SET @s = CONCAT('SELECT COUNT(*) FROM train WHERE ', _car, '<=0;');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END\\
但我想将 SELECT 语句的答案捕获到我的 _a 变量中。
我尝试将我的代码更改为
SET @s = CONCAT('SELECT COUNT(*) INTO', _a,' FROM train WHERE ', _car, '<=0;');
但这没有用。
请帮忙?
解决了!
DELIMITER \\
CREATE PROCEDURE sample (IN _car VARCHAR(15))
BEGIN
DECLARE _a INTEGER;
SET @var = NULL;
SET @s = CONCAT('SELECT COUNT(*) INTO @var FROM train WHERE ', _car, '<=0;');
PREPARE stmt1 FROM @s;
EXECUTE stmt1;
SELECT @var;
DEALLOCATE PREPARE stmt1;
END\\
:D