Déterminer la date du premier jour d'une semaine par le numéro de semaine.
Le principe est de déterminer le premier lundi de l'année pour l'additionner au nombre de semaine * 7
Source / Exemple :
--------------------------------------------------------------------------------------------------------------
-- Retrieve first date of week
--------------------------------------------------------------------------------------------------------------
FUNCTION getFirstDateOfWeek(vi_week_number IN INTEGER,
vi_year IN INTEGER)
RETURN DATE
IS
v_first_monday_of_the_year INTEGER;
v_value INTEGER;
BEGIN
v_first_monday_of_the_year := -1;
v_value := 0;
WHILE v_value <> 2 /*Find first Monday*/
LOOP
v_first_monday_of_the_year := v_first_monday_of_the_year + 1;
v_value := TO_CHAR(TO_DATE(vi_year || '0101', 'YYYYMMDD') + v_first_monday_of_the_year, 'D');
END LOOP;
RETURN TO_DATE(vi_year || '0101', 'YYYYMMDD')+(v_first_monday_of_the_year + (7 * (vi_week_number - 2)));
END;
Conclusion :
Pas trouvé d'équivalent sur le Net, du coup je publie mon source
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.