写好了 发给你自己测试下, 笔记本断网了,专门去同事电脑上发给你的,记得采纳哦
-- 创建测试表
drop TABLE IF EXISTS test;
create table test(
id TINYINT primary key,
qid1 CHAR(1),
qid2 CHAR(1),
qid3 CHAR(1),
qid4 CHAR(1)
);
-- 插入测试数据
INSERT into test VALUES (1,'A','A','B','B');
-- 创建存储过程
DROP PROCEDURE IF exists P_test;
DELIMITER &&
CREATE PROCEDURE P_test()
BEGIN
DECLARE q1,q2,q3,q4 char(1) DEFAULT '';
DECLARE aNum,bNum TINYINT DEFAULT 0;
SELECT qid1,qid2,qid3,qid4 into q1,q2,q3,q4 FROM test;
IF q1 = 'A' THEN
SET aNum = aNum+1;
ELSE
SET bNum = bNum+1;
END IF;
IF q2 = 'A' THEN
SET aNum = aNum+1;
ELSE
SET bNum = bNum+1;
END IF;
IF q3 = 'A' THEN
SET aNum = aNum+1;
ELSE
SET bNum = bNum+1;
END IF;
IF q4 = 'A' THEN
SET aNum = aNum+1;
ELSE
SET bNum = bNum+1;
END IF;
SELECT 'A',aNum
UNION
SELECT 'B',bNum;
END &&
DELIMITER ;
-- 调用 就出现你要的结果
CALL P_test();
追问谢谢了,不过我的是在mysql里的,
追答一样的 你的sql语句 就是一条: call P_test(); 这个跟select 语句一样的
直接可以在程序中执行
记得采纳哦朋友
本回答被网友采纳