Date mysql moin 1 Day

Signaler
-
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
-
Bonjour,
Mon problème est simple mais je veux des information ou quelque support bon
J ai une date stocker dans ma base donner mysql table date colone dt
La date et 12-12-2019

Moi je veux que le moment que je fait une sélect je veux avoir
Sélect dt from date where dt-1 = datenow
Ctadir avoir une message écho avant la date sélectionner en 1 Day

Merci pour votre attention

2 réponses

Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
Bonjour,

Déjà... une date se stocke dans un champ DATE ou DATETIME ou TIMESTAMP
Une fois cette modification effecutée... tu pourras utiliser la fonction
SELECT * FROM `date`
WHERE  NOW()  =   dt - INTERVAL 1 DAY
Oui mais le problème c que la colone c du type varchar et non pas datetime
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347 > Olmac
oui ben c'est bien ce que je te dis ... une date ça ne se stocke pas dans du varchar !
Donc avant d'aller plus loin.. corrigé cette énorme erreur....
bonjour dans mon code j ai
select * from table where dt = now()

pour cette select ca marche la date sous base donne egale la date now donc il affiche une alert
mais moi je veux SELECT DATE_SUB("2019-02-14", INTERVAL 1 DAY);
dans cette ligne s affiche 13-02-2019 ok mais quand je fait

SELECT DATE_SUB(".$dt.", INTERVAL 1 DAY);

il n affiche rien
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
Pourquoi $dt ?
$dt pour recuperer la date depuis la base donne moin 1 Day après en va la comparer avec date now
Messages postés
32451
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 mai 2021
347
Tu nous parles de requête SQL .. donc ici... le PHP n'a pas sa place.
Dans ta requête sql si tu fais simplement :
select * from table where dt = now() + INTERVAL 1 DAY