[plpgsql] Clause in en parametre de fonction
Bonjour,
J'essaie d'envoyer le texte d'une clause IN en paramètre d'une fonction. Si je passe une seule valeur ça marche mais à partir de 2 le serveur n'arrive pas à faire le matching.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
CREATE OR REPLACE FUNCTION mafonction(text)
RETURNS integer AS
$BODY$
DECLARE
i bigint;
BEGIN
select into i count(distinct id) from objects1 where id IN($1);
return i;
END
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION mafonction(text); |
Si je fais ça :
Code:
1 2
|
select * from mafonction('202500066668693') |
Ca me renvoie 1 (c'est bon).
Mais si je fais ça :
Code:
1 2
|
select * from mafonction('202500066668693,202500001319972') |
Ca me renvoie 0...
C'est sûrement un problème d'interprétation du paramètre mais je ne vois pas comment le résoudre.