Vous auriez besoin d'utiliser la même approche SQL dynamique que celle suggérée dans votre autre question
PROCEDURE get_stat (gender IN VARCHAR2)
AS
v_sql varchar2(1000);
v_param varchar2(100) := 'AVG_WEIGHT';
v_stat number;
BEGIN
v_sql := 'SELECT ' || gender || ' FROM survey WHERE parameter = :1';
EXECUTE IMMEDIATE v_sql
INTO v_stat
USING v_param;
END get_stat;
Mais vous auriez les mêmes objections générales qui ont été soulevées dans votre question précédente - le modèle de données est fondamentalement défectueux. Vous seriez bien mieux servi d'avoir une ligne séparée pour MALE
et FEMALE
résultats de l'enquête plutôt que d'avoir des colonnes séparées pour male
et female
résultats.