Ce que j'essaie de faire ici, c'est d'ajouter un composant temporel à GETDATE() puisqu'il est converti en varchar (25). C'est ma déclaration, comment ferais-je?Erreur avec SQL CONVERT GETDATE() pour les années bissextiles
CONVERT(Varchar(25),YEAR(GETDATE())-1)
Serait-il quelque chose le long CONVERT (VARCHAR (25), année (getDate()) -1)
Ce CONVERT est en fait une partie de:
DATEADD(m, 6,CAST(CONVERT(Varchar(25),MONTH(tblDateApt. Date)) +
'/' + CONVERT(Varchar(25),DAY(tblDateApt. Date))
+ '/' + CONVERT(Varchar(25),YEAR(GETDATE())-1) As DateTime))
Le problème est quand je cours cette déclaration sur une date de l'année bissextile, je reçois une erreur. Je suis en train d'ajouter un temps de getDate avant qu'il ne soit casté DATETIME
EDIT 2
Je suis tout simplement essayer de faire cela donne revenir une valeur ...
select DATEADD(m, 6,CAST(CONVERT(Varchar(25),MONTH('2/29/2016')) + '/' + CONVERT(Varchar(25),DAY('2/29/2016')) + '/' + CONVERT(Varchar(25),YEAR(GETDATE())-1) As DateTime))
Cela me semble un [XYPropblem] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). quel est ton but? –
Quand je fais le CONVERT (varchar25), année (GetDate()) - 1) sur une année bissextile, j'obtiens une erreur parce qu'elle essaie de retourner au 29/02/2015 - mais je sais si j'ai peut-être ajouté un temps composante à elle, il reviendrait simplement au 28/02/2016. Quand je fais un dateadd SELECT (yy, -1, '2/29/2016') il me donne 28/02/2016 mais il ne fonctionne pas dans cette requête – FatBoySlim7
ce qui est les données comme dans tblDAteApt? Pouvez-vous montrer quelques exemples d'entrées des enregistrements avec lesquels vous rencontrez des problèmes et la sortie attendue de DAteAdd? – HLGEM