我有一点问题而我没有解决它!
CREATE PROCEDURE selection_socioprof(IN age INT,IN prof varchar(50))
BEGIN
declare calcul number;
declare prc_cat number;
declare nb_particip number;
SELECT COUNT(*) INTO nb_particip FROM questionnaire;
SELECT COUNT(*) INTO calcul
FROM questionnaire
where question2=age AND question3=prof;
prc_cat:=(calcul/nb_particip)*100;
concat('le pourcentage des participants aux jeux SMS ayant la
catégorie socioprofessionnelle choisie est',prc_cat);
END;
这是错误:
1064 - 您的SQL语法出错;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 在第3行'number'附近
答案 0 :(得分:0)
使用以下代码:
delimiter $$
CREATE PROCEDURE selection_socioprof(IN age INT,IN prof varchar(50))
BEGIN
declare calcul int(10);
declare prc_cat int(10);
declare nb_particip int(10);
SELECT COUNT(*) INTO nb_particip FROM questionnaire;
SELECT COUNT(*) INTO calcul FROM questionnaire where question2=age AND question3=prof;
set prc_cat=(calcul/nb_particip)*100;
select concat('le pourcentage des participants aux jeux SMS ayant la catégorie socioprofessionnelle choisie est',prc_cat); END $$
delimiter ;
答案 1 :(得分:0)
尝试:
DELIMITER //
CREATE PROCEDURE selection_socioprof(IN age INT,IN prof VARCHAR(50))
BEGIN
DECLARE calcul INT;
DECLARE prc_cat INT;
DECLARE nb_particip INT;
SELECT COUNT(*) INTO nb_particip FROM questionnaire;
SELECT COUNT(*) INTO calcul FROM questionnaire WHERE question2=age AND question3=prof;
SET prc_cat := (calcul/nb_particip)*100;
SELECT CONCAT('le pourcentage des participants aux jeux SMS ayant la catégorie socioprofessionnelle choisie est',prc_cat);
END; //
DELIMITER //