IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

Ensemble de jours entre deux mois débutant chaque 5 du mois M et finissant à M+5


Sujet :

Requêtes PostgreSQL

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Ensemble de jours entre deux mois débutant chaque 5 du mois M et finissant à M+5
    Bonjour, à tous j'espère que vous allez bien. Alors voilà j'ai besoin de retourner les dates entre le 05 du mois passé et le 05 du mois actuel.
    Exemple aujourd'hui est le 16/08/2022 je récupère donc l'ensemble des jours entre le 05/07/2022 et le 05/08/2022

    Pour le moment j'essaie avec cette requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DATE from Db_name where date between date_trunc('month', current_date-1) and date_trunc('month',current_date)

  2. #2
    Membre confirmé Avatar de licardentaistor
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2021
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juillet 2021
    Messages : 316
    Points : 453
    Points
    453
    Par défaut
    je connais pas PostgreSQL mais avec la doc moi j'utiliserais make_date et date_part: https://database.guide/how-make_date...in-postgresql/
    https://data36.com/sql-current-date-...timestamp))%3B

    un truc du style:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT make_date(date_part('year', (SELECT current_timestamp)), date_part('month', (SELECT current_timestamp)-1) , 5);
    à tester.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    Bonjour licardentaistor,

    merci de ta réponse, cependant la fonction Make_Date n'est pas disponible dans postgreSQL
    Je vais essayer avec des date_trunc('month', date) et je te reviendrais

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Résolu
    Finalement j'ai trouvé un truc qui fonctionne, à savoir si c'est le plus optimal .
    NB: Dans ma BD mes dates sont de type integer sous la forme yyyymmdd
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    select champs_type_integer
    from db_name where 
         champs_type_integer>= concat( 
    	(select extract(year from NOW())::varchar),
    	'0',
    	(select extract(month from (NOW()-interval '1 month' ))::varchar),
    	'05')::integer
    	and
        champs_type_integer<= concat( 
    	(select extract(year from NOW())::varchar),
    	'0',
    	(select extract(month from NOW())::varchar),
    	'05')::integer

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calcul année mois jours entre deux dates
    Par lmc71 dans le forum Access
    Réponses: 1
    Dernier message: 13/01/2016, 17h01
  2. Réponses: 4
    Dernier message: 09/04/2015, 09h15
  3. [Requete] Calcul Somme entre deux temps pour chaque jour
    Par nico33307 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 21/03/2006, 00h58
  4. Comment obtenir le nombre de jours entre deux timedatepicker
    Par bertrand_declerck dans le forum Composants VCL
    Réponses: 2
    Dernier message: 12/08/2005, 11h59
  5. Connexion entre deux ordi [Débutant]
    Par Ryadus dans le forum Développement
    Réponses: 2
    Dernier message: 12/06/2003, 21h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo