Mon site a été construit avec WordPress et j'ai le cas suivant:
Le tableau que je veux interroger est le Quelle envie de déclencher une requête SQL qui me donnera tous les détails sur un événement publié à une date spécifique qui proviendra d'un calendrier. p> J'ai essayé ceci: p> si i Alors, comment puis-je obtenir ces détails si je n'ai que l'année, le mois, la journée et non les heures? < / p> p> wp_poststs code> et la colonne à cibler est le
post_date code> de l'heure
datetime code> (pas
Date code> et je ne peux pas le changer à cause de la commodité de WordPress).
var_dump () code> le
$ dateformat code> Je peux voir le Les données, cependant, mon
$ résultat code> ne montre rien.
J'ai ensuite conclu que cela ne montrerait jamais quoi que ce soit parce que dans le tableau, les dates ont aussi des moments. P>
3 Réponses :
Les dates sont considérées comme une chaîne dans SQL. Vous devez utiliser des guillemets: D'aillie, oui si vous avez des colonnes DateTime, vous devez interroger d'une autre manière, en utilisant entre ou simplement: p>
Comme mentionné précédemment, cela ne fonctionnera pas car nous utilisons le format de date en année, au mois et au jour, lors de la base de données, les enregistrements sont stockés avec horodatage actuel
Je viens de poster une réponse à ma propre question et j'espère que vous pourrez me faire savoir s'il n'est peut-être pas une bonne pratique. Je choisirai toujours de vote le vôtre car il a l'air logique aussi bien, bien que plus longtemps.
Ce n'est pas une bonne pratique, comme la requête prendra plus de temps. Regardez ici si vous êtes intéressé par des problèmes de performances: Stackoverflow.com/Questtions/1754411/...
Il n'ya qu'une erreur de syntaxe dans votre réponse qui a du mal à comprendre. Problème Un devis manquant quelque part. Mais j'ai déjà marqué la réponse aussi utile
Après la navigation sur W3schools, j'ai fini par conclure que je peux utiliser la recherche SQL. Ma requête fonctionne maintenant P> P>
Votre colonne post_date est un champ DateTime et j'ai trouvé la requête demandée n'a que la valeur de date afin que vous puissiez utiliser cette requête comme suit:
$request =$pdo->query("SELECT * FROM posts WHERE DATE(post_date) = '$date_format'");
Si vous utilisez WordPress, pour obtenir le message, vous pouvez utiliser wp_query développeur.wordpress.org/reference / Classes / WP_Query