Bonjour,
je débute vraiment est donc excusé moi si la question est bête mais j'ai cherché partout et je n'ai pas trouvé. Voici mon problème:
je dois créer une fonction consultation() qui révèle au médecin les symptomes visible du patient selon sa compétence (pour l'instant je n'en teste qu'une seule).
voici ce que j'ai fait:
mais ça ne fonctionne pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Create or replace function consultation( medecin medecins.matricule%TYPE, patient contamination.id_patient%TYPE) returns text as $$ DECLARE symptomevisible symptomes.nom_sympt%TYPE; competence medecins.type%TYPE; BEGIN select type into competence from medecins where matricule=medecin; IF competence='referent' THEN FOR symptomevisible in select nom_sympt from symptomes where id_sympt in ((select id_sympt from maladie_symptomatique where nom_maladie in (select nom_maladie from contamination where id_patient=patient))) LOOP return symptomevisible; END LOOP; end if; END; $$ LANGUAGE PLPGSQL;
en appelant ma fonction j'obtient:
consultation
----------------------
presence de comedons
(1 row)
alors que les symptomes du patients sont:
nom_sympt
---------------------------
presence de comedons
presence de points blancs
presence de papules
presence de de pustules
(4 rows)
Comment faire pour faire afficher les 4 symptomes, je fais une boucle mais elle ne tourne pas.
Pourriez vous m'aider??? S'il vous plait!!!
merci d'avance
Partager