fonction table pour récupérer la liste des jours entre deux dates
Je veux créer une fonction table pour récupérer la liste des jours entre deux dates données ;
J’ai essayé avec le code suivant
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| create function getJours(@datdeb as datetime, @datfin as datetime)
returns table
as
begin
if (@datfin <> @datdeb)
return (
select @datdeb
union
select * from getJours(dateadd(d, @datdeb, 1), @datfin)
)
else
return (select dateadd(d, @datdeb, 1))
end |
Mais je trouve cette erreur
Citation:
Msg 178, Niveau 15, État 1, Procédure getJours, Ligne 6
Une instruction RETURN avec une valeur de retour ne peut être utilisée dans ce contexte.
Msg 178, Niveau 15, État 1, Procédure getJours, Ligne 14
Une instruction RETURN avec une valeur de retour ne peut être utilisée dans ce contexte.
Msg 102, Niveau 15, État 31, Procédure getJours, Ligne 18
Syntaxe incorrecte vers 'BEGIN'.