[PostGres] - select * from mafonction() ?
Bonjour,
je veux créer une fonction stockée qui renvoie un ensemble d'enregistrement,
et pouvoir l'utiliser de manière simple du genre SELECT *, sans avoir à préciser les champs attendus.
Je crée une fonction sous ce modèle:
Code:
1 2 3 4 5 6 7 8 9 10
|
CREATE OR REPLACE FUNCTION fn_get_id_from_serial(IN serial_id "varchar")
RETURNS SETOF record AS
$BODY$
SELECT id
FROM table_prod
WHERE $1 >= serial_id_low
AND $1 <= serial_id_high
$BODY$
LANGUAGE 'sql' VOLATILE; |
Allégée pour l'exemple, je dois renvoyer au final une multitude de champs et quelques jointures...
Mon but étant de réutiliser plus tard cette fonction sour la forme
Code:
SELECT * FROM fn_get_id_from_serial('001122334455');
Aujourd'hui je dois explicitement déclarer les paramètres reçus:
Code:
SELECT * FROM fn_get_id_from_serial('$001122334455') AS (id INT4)
Je n'arrive pas à mettre la main sur une syntaxe claire pour déclarer les paramètres dans la fonction et non dans la requête l'utilisant.
Merci pour toute aide,
Vincent.