Jour de la semaine SQL

Jour de la semaine SQL

La date et l'heure sont significatives lorsque vous travaillez avec les données. Ils nous permettent de suivre les modifications apportées à la base de données dans des intervalles de temps spécifiques.

Cependant, dans les bases de données SQL, vous devez spécifier la date intégrale (i.e., l'année, le mois et la date.) Par conséquent, si vous avez besoin d'accéder uniquement à une partie spécifique de la date, vous devez effectuer une opération particulière.

Cet article examinera comment nous pouvons extraire le jour de la semaine à partir d'une valeur de date en utilisant à la fois l'héritage et le SQL standard.

Bien que certains moteurs de base de données prennent toujours en charge Legacy SQL, nous recommandons l'option pour SQL standard pour garantir la compatibilité avec les principaux moteurs de base de données.

Héritage SQL

La première méthode dont nous discuterons est d'extraire le jour de la semaine en utilisant le héritage SQL. Pour cela, nous utiliserons la fonction dayofweek ().

Cette fonction prend un type de données d'horodatage comme argument et renvoie le jour de la semaine. La valeur de retour est un type entier allant de 1 à 7: où 1 est dimanche, et sept est le samedi inclusif.

La syntaxe de fonction est comme indiqué ci-dessous:

JOUR DE LA SEMAINE()

Cette fonction illustrée dans l'exemple ci-dessous:

SELECT DAY (horodatage ('2012-04-01 10:07:05')) comme day_of_week;

La requête ci-dessus devrait retourner un entier indiquant le jour de la semaine. L'exemple de sortie est comme indiqué:

jour de la semaine
1

SQL standard.

Contrairement à Legacy SQL, SQL standard nous fournit une fonction pour extraire diverses parties de DateTime.

La fonction extrait () extrait une partie spécifique d'un type d'horodatage. La syntaxe de fonction est comme indiqué:

Extrait (partie de Date_expression)

La fonction prend la pièce pour extraire l'horodatage. La pièce peut inclure les options suivantes:

  1. JOUR DE LA SEMAINE
  2. JOUR
  3. Dayofyar
  4. SEMAINE
  5. SEMAINE
  6. JOUR DE LA SEMAINE
  7. Isoweek
  8. MOIS
  9. TRIMESTRE
  10. ANNÉE
  11. Isoyear

Pour ce tutoriel, nous sommes intéressés à extraire le jour de la semaine afin que nous puissions spécifier la pièce en tant que Dayofweek.

La fonction doit renvoyer une valeur entière allant de 1 à 7.

Un exemple est comme indiqué:

SÉLECTIONNER
Extrait (dayofweek de la date '2022-04-01') comme day_of_week;

La requête ci-dessus doit renvoyer la sortie comme:

jour de la semaine
6

Conclusion

Cet article a discuté de deux méthodes principales pour extraire le jour de la semaine à partir d'un objet de date dans l'héritage et SQL standard.