Maison >base de données >tutoriel mysql >Comment sélectionner efficacement le premier jour d'un mois en SQL ?

Comment sélectionner efficacement le premier jour d'un mois en SQL ?

DDD
DDDoriginal
2025-01-17 23:01:09450parcourir

How to Efficiently Select the First Day of a Month in SQL?

Sélectionnez efficacement le premier jour du mois en SQL

Récupérer le premier jour du mois à partir d'une variable DateTime donnée est une tâche courante dans les opérations de base de données. Bien que le code utilisant la fonction CAST soit une solution possible, ce n'est pas l'approche la plus efficace ou la plus élégante.

Meilleure solution

Pour sélectionner le premier jour du mois, un moyen plus efficace consiste à utiliser les fonctions DATEADD et DATEDIFF. Le code suivant illustre cette technique :

<code class="language-sql">SELECT DATEADD(month, DATEDIFF(month, 0, @mydate), 0) AS StartOfMonth</code>

Instructions :

  • DATEDIFF(month, 0, @mydate) Calcule la différence entre la variable DateTime donnée @mydate et le début du mois en cours (c'est-à-dire le 1er janvier).
  • DATEADD(month, DATEDIFF(month, 0, @mydate), 0) Ajoutez la différence calculée au début du mois en cours pour obtenir le @mydate premier jour du mois.

Cette méthode est plus rapide et plus concise que la méthode précédente utilisant la fonction CAST.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn