Bonjour à tous,
Version SQL: sql server 2000 Sp4
J'ai t ceci comme fonction :
Le but j'ai un format ANNEE N° semaine N° Jour.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 CREATE FUNCTION dbo.fnGetDateFromYearWeekWeekday ( @Year INT, @Week INT, @Weekday INT ) RETURNS DATETIME AS BEGIN RETURN CASE WHEN @Year < 1900 OR @Year > 9999 THEN NULL WHEN @Week < 1 OR @Week > 53 THEN NULL WHEN @Weekday < 1 OR @Weekday > 7 THEN NULL WHEN @Year = 9999 AND @Week = 52 And @Weekday > 5 THEN NULL WHEN DATEPART(YEAR, DATEADD(DAY, 7 * @Week + DATEDIFF(DAY, 4, DATEADD(YEAR, @Year - 1900, 7)) / 7 * 7, -4)) <> @Year THEN NULL ELSE DATEADD(DAY, 7 * @Week + DATEDIFF(DAY, 4, DATEADD(YEAR, @Year - 1900, 7)) / 7 * 7, @Weekday - 8) END END
Et je voudrait retrouver la date.
J'ai excuter cette fonction je la retrouve bien sur mon serveur SQL,
puis j'ai tapé ceci:
Dans l'outil analyseur de requête il me met aucune erreur mais il me retourne rien comme résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 DECLARE @Year INT DECLARE @Week INT DECLARE @Weekday INT SET @Year ='2011' SET @Week='12' SET @Weekday='5' EXECUTE dbo.fnGetDateFromYearWeekWeekday @Year,@Week,@Weekday
Quel erreur est-je commis?
guigui69
Partager