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
Ce billet m'a aidé aujourd'hui, mais j'ai dû expérimenter pour faire ce dont j'avais besoin. Voici ce que j'ai trouvé.
Si vous souhaitez ajouter des périodes plus complexes, 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 de DATE_ADD
Ne permet pas d'ajouter plus d'un intervalle. Et il n'y a pas de mot clé d'intervalle YEAR_DAYS, bien qu'il y en ait d'autres qui combinent des périodes. Si vous ajoutez des heures, utilisez now()
plutôt que curdate()
.
Pour les types à intervalles multiples, utilisez une construction imbriquée comme dans:
UPDATE table SET date = DATE_ADD(DATE_ADD(date, INTERVAL 1 YEAR), INTERVAL 1 DAY)
Pour mettre à jour une date donnée dans la colonne date
à 1 an + 1 jour