96 votes

Date de mise à jour + un an dans mysql

Quand je veux définir la valeur numérique +1 dans la table mysql, j'utilise par exemple:

 UPDATE table SET number=number+1 WHEN ...
 

Comment définir une date + un an?

Merci

169voto

Julien Hoarau Points 23987

Vous pouvez utiliser DATE_ADD : (ou ADDDATE avec INTERVAL )

 UPDATE table SET date = DATE_ADD(date, INTERVAL 1 YEAR) 
 

17voto

Fred McIntyre Points 31

Ce post m'a aidé aujourd'hui, mais j'ai eu d'expérience pour faire ce dont j'avais besoin. Voici ce que j'ai trouvé.

Si vous souhaitez ajouter plus complexe périodes de temps, par exemple, 1 an et 15 jours, vous pouvez utiliser

UPDATE tablename SET datefieldname = curdate() + INTERVAL 15 DAY + INTERVAL 1 YEAR;

J'ai trouvé que l'utilisation d' DATE_ADD n'autorise pas l'ajout de plus d'un intervalle. Et il n'y a pas de YEAR_DAYS intervalle de mot-clé, mais il ya d'autres qui combinent des périodes de temps. Si vous ajoutez le temps, l'emploi now() plutôt que d' curdate().

1voto

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X