Fonction avec différentes tables en entrée
Bonjour à tous,
J'ai une query qui me retourne une valeur de disponibilité par rapport à un lot de données.
En voici une version très simplifiée (pour la compréhension):
select sum(date2-date1) as Mavaleurfinale from matable.
J'aimerai en créer une fonction pour que ce même calcul soit disponible pour d'autres lots de données provenant de différentes tables.
Par exemple
select fGet_Availability(select startdate as date1, enddate as date2 from uneTable) from dual
select fGet_Availability(select dateA as date1, dateB as date2 from uneautreTable where colX = 'server1') from dual
avec une fonction (ou peut-être une procédure) dans un package qui serait quelque chose comme:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| TYPE T_Avail_Record IS RECORD (StartDate date, EndDate date);
TYPE InputRowset IS TABLE OF T_Avail_Record;
FUNCTION fGet_Availability( InputRowset )
RETURN NUMERIC
IS
t_Mavaleurfinale numeric;
BEGIN
select sum(date2-date1) into Mavaleurfinale from InputRowset
RETURN (t_Mavaleurfinale);
END |
Je n'ai trouvé sur aucun forum la possibilité de faire un SELECT sur un lot de donnée en entré de fonction.
Est-ce possible sous Oracle (version 11.2.0.3.0) ?
En espérant avoir été clair,
D'avance merci pour votre aide,
Eric.