Maison > Article > base de données > Comment regrouper les enregistrements par date dans MySQL lorsque seules les valeurs DATETIME existent ?
Conversion de DATETIME en DATE dans MySQL
Lorsque vous travaillez avec des bases de données, il est souvent nécessaire de regrouper les enregistrements par date. Cependant, si la base de données stocke uniquement les valeurs DATETIME au lieu des valeurs DATE, vous pourriez rencontrer des difficultés lors de l'exécution de ces opérations.
Pour résoudre ce problème, MySQL fournit plusieurs fonctions qui vous permettent de modifier les valeurs DATETIME. L'une de ces fonctions est DATE(), qui prend un argument DATETIME et renvoie uniquement la partie date, à l'exclusion de l'heure. Cela peut être extrêmement utile pour regrouper des enregistrements en fonction de la date.
Par exemple, considérons la requête suivante :
select * from follow_queue group by follow_date cast follow_date as date
Cette requête regroupe les enregistrements par la colonne follow_date. Cependant, puisque follow_date contient des valeurs DATETIME, il est nécessaire de le convertir en DATE pour extraire uniquement la partie date. Cela se fait à l'aide de la fonction CAST(), comme indiqué dans la requête.
Cependant, il est important de noter que la requête fournie dans l'énoncé du problème n'est pas valide. Pour obtenir le résultat souhaité, la syntaxe doit être corrigée comme suit :
select * from follow_queue group by DATE(follow_date)
Cette requête utilise directement la fonction DATE() pour extraire la partie date de la colonne follow_date. La fonction DATE() renvoie une valeur DATE, qui peut être utilisée pour les opérations de regroupement. En utilisant cette fonction, vous pouvez obtenir le résultat souhaité en regroupant les enregistrements par date, même si la base de données ne stocke que les valeurs DATETIME.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!