problème de conversion avec dateadd
Bonjour,
si j'exécute le code qui suit
Code:
1 2
| select
convert(varchar,dateadd(M,+1,getdate()),112 |
j'obtiens 200802. Ce qui est parfaitement correct.
Là où la situation se gâte, c'est lorsque je souhaite faire la même opération sur un champ ayant le format 200801 et que je souhaite y ajouter un mois - ou plus, peu importe.
Le code suivant que je trouve être adapté semble ajouter 1 à ma date (200801) et la transformer ensuite en date.
NOM DE TABLE : TEST
NOM DU CHAMP : Year_Month = 200801
Code:
1 2 3
| select
CONVERT(CHAR(6),dateadd(M,+1,(convert(char(6),[SIOP_Daily_Picture].[dbo].[test].[Year_Month],112))),112)
from test |
et le résultat est : 202009
Toujours est-il que ce n'est pas un résultat correct. Quelqu'un saurai comment ajouter à 200801 1 mois de sorte à avoir un résultat 200802 grâce a la fonction dateadd ??