Bonjour,
Comment puis je récupérer la période en passant en paramètre le n° de la semaine ?
Exemple :
semaine 24 = du lundi 20/06/2011 au dimanche 26/06/2011
Merci de vos réponses,
Cdlt, Cyrille.
Bonjour,
Comment puis je récupérer la période en passant en paramètre le n° de la semaine ?
Exemple :
semaine 24 = du lundi 20/06/2011 au dimanche 26/06/2011
Merci de vos réponses,
Cdlt, Cyrille.
Bonjour,
Vous pouvez faire comme ceci :
Code SQL : 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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81 SET DATEFIRST 1 DECLARE @NumSemaine INT = 24 SELECT DATEADD( WEEK, @NumSemaine, DATEADD( DAY, 1 - DATEPART( dw, DATEADD( DAY, 3, DATEADD( YEAR, DATEDIFF( YEAR, 0, GETDATE() ), 0 ) ) ), DATEADD( DAY, 3, DATEADD( YEAR, DATEDIFF( YEAR, 0, GETDATE() ), 0 ) ) ) ) AS Debut, DATEADD( DAY, 6, DATEADD( WEEK, @NumSemaine, DATEADD( DAY, 1 - DATEPART( dw, DATEADD( DAY, 3, DATEADD( YEAR, DATEDIFF( YEAR, 0, GETDATE() ), 0 ) ) ), DATEADD( DAY, 3, DATEADD( YEAR, DATEDIFF( YEAR, 0, GETDATE() ), 0 ) ) ) ) )
ou avec une CTE, c'est plus lisible :
Code SQL : 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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 SET DATEFIRST 1 DECLARE @NumSemaine INT = 24 ;WITH Jan1 AS ( SELECT DATEADD( YEAR, DATEDIFF( YEAR, 0, GETDATE() ), 0 ) AS J ), Jan4 AS ( SELECT DATEADD(DAY, 3, J) AS J FROM Jan1 ), Lundi1 AS ( SELECT DATEADD( DAY, 1 - DATEPART( dw, J ), J ) AS J FROM Jan4 ) SELECT DATEADD( WEEK, @NumSemaine, J ) AS Debut, DATEADD( DAY, 6, DATEADD( WEEK, @NumSemaine, J ) ) AS Fin FROM Lundi1
Pour moi, le plus simple serait de créer une table DATE.
Si un message vous a aidé, n'hésitez pas à mettre +1C'est en faisant n'importe quoi qu'on devient n'importe qui
Regarder ceci
Etienne ZINZINDOHOUE
Billets-Articles
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager