Maison > base de données > tutoriel mysql > Comment obtenir le dernier jour du mois précédent dans PostgreSQL ?

Comment obtenir le dernier jour du mois précédent dans PostgreSQL ?

Susan Sarandon
Libérer: 2025-01-06 09:24:41
original
957 Les gens l'ont consulté

How to Get the Last Day of the Previous Month in PostgreSQL?

Détermination du dernier jour du mois précédent dans PostgreSQL

Lors de l'interrogation d'une base de données pour récupérer des enregistrements dans une plage de dates spécifique, il est souvent nécessaire d'inclure le dernier jour de le mois précédent. Cette plage peut varier chaque mois, en fonction de la date du jour.

Sans fonction

Pour déterminer le dernier jour du mois précédent sans utiliser de fonction, vous pouvez utiliser la requête suivante pour un colonne date :

SELECT *
FROM tbl
WHERE my_date BETWEEN date_trunc('month', now())::date - 1
               AND     now()::date
Copier après la connexion

La fonction date_trunc('month', now()) renvoie le premier jour du mois en cours. En soustrayant un jour de ce résultat à l'aide de l'opérateur de soustraction, on obtient le dernier jour du mois précédent.

Pour une colonne timestamp, la requête est légèrement différente :

SELECT *
FROM tbl
WHERE my_timestamp >= date_trunc('month', now()) - interval '1 day'
AND    my_timestamp <  date_trunc('day'  , now()) + interval '1 day'
Copier après la connexion

La date_trunc ('month', now()) renvoie le début du mois en cours sous forme d'horodatage. Pour obtenir le dernier jour du mois précédent, nous soustrayons un jour en utilisant l'expression -intervalle '1 jour'.

Pour la deuxième condition, nous ajoutons un jour au date_trunc('day' , now() ) résultat en utilisant l'intervalle « 1 jour » pour garantir que la plage inclut tout « aujourd'hui ».

Avec une fonction

Si vous préférez utiliser une fonction, vous pouvez utiliser le Fonction LAST_DAY() pour obtenir le même résultat :

SELECT *
FROM tbl
WHERE my_date BETWEEN LAST_DAY(DATE_SUB(NOW(), INTERVAL 1 MONTH)) AND NOW()
Copier après la connexion

Cette fonction calcule explicitement le dernier jour du mois précédent en fonction de la date actuelle.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal