Hallo, j'ai cette SQLMySQL date_add() comment utiliser mois dans ce domaine?
SELECT DATE_ADD('2009-'+ MONTH(NOW()) +'-01' , INTERVAL -1 MONTH);
je ne peux pas le faire fonctionner, ce que je fais mal ici?
réservoirs d'aide.
Hallo, j'ai cette SQLMySQL date_add() comment utiliser mois dans ce domaine?
SELECT DATE_ADD('2009-'+ MONTH(NOW()) +'-01' , INTERVAL -1 MONTH);
je ne peux pas le faire fonctionner, ce que je fais mal ici?
réservoirs d'aide.
SELECT CONCAT_WS('-', '2009', MONTH(NOW()), '01') - INTERVAL 1 MONTH
Plus est un opérateur arithmétique, vous devez utiliser concat.
SELECT DATE_ADD(concat('2009-',MONTH(NOW()),'-01') , INTERVAL -1 MONTH)
ou mieux
select date(now()) - interval day(NOW())-1 day - interval 1 month;
(ce sera aussi travailler en 2010)
Il est la concaténation de la date qui ne fonctionne pas. Il convertit les chaînes en nombres, donc vous obtenez 2009 + 11 + -1 = 2019, qui ne parvient pas à convertir en date. Au lieu de concaténer une date à partir de chaînes, vous pouvez utiliser la fonction last_day pour obtenir le dernier jour du mois en cours, ajouter un jour pour passer au jour suivant du mois suivant, puis soustraire deux mois pour accéder au premier jour du mois précédent:
select last_day(now()) + interval 1 day - interval 2 month;
Réservoirs perfekt;) tout ce dont j'ai besoin. – ParisNakitaKejser
Sauf qu'il ne répond pas à la question réelle du tout ... – Guffa