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

SQL Oracle Discussion :

Obtenir le mois de l’année dernière


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 124
    Par défaut Obtenir le mois de l’année dernière
    Bonjour,

    J’ai une colonne date au format ‘MMYYYY’ avec les dates suivantes :
    11/2018
    11/2019
    11/2020

    Je souhaite récupérer à chaque fois le mois de novembre de la dernière année.

    Exemple : Nous sommes en juin 2021 et je souhaite récupérer le mois de novembre 2020.
    Lorsque j’aurais le mois de novembre 2021 dans mes données , je souhaite récupérer ce mois de novembre 2021.

    Merci d’avance pour votre aide

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 175
    Par défaut
    Bonjour,

    En fait il te faut celui de cette année ou si non trouvé celui de l'année dernière?

    Tu peux faire une requête de ce genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select * from 
    (select *
    from t
    where col_mois in ('11' || to_char(sysdate, 'yyyy'), '11' || to_char(trunc(sysdate, 'y') - 1, 'yyyy'))
    order by to_date(col_mois, 'mmyyyy') desc
    )
    where rownum = 1

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 124
    Par défaut
    Bonjour vanagreg,
    Merci pour ton retour.

    J'ai une question concernant ta requête .
    Lorsque nous serons en decembre 2021 , ça prendra le mois de novembre 2020 ?
    Car si nous sommes en décembre 2021, il faudrait prendre le mois de novembre 2021.

    En gros, chaque année je souhaite prendre le derniers mois de novembre

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 175
    Par défaut
    Oui ça prendra bien novembre 2021. En gros on cherche novembre de l'année courante, et novembre de l'année dernière. On trie par mois le plus récent, et on prend alors le premier. Si novembre 2021 n'y est pas, on prendra alors novembre 2020. Mais si novembre 2020 n'y est pas, la requête ne ramènera rien.

  5. #5
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 124
    Par défaut
    Ok d'accord, merci

    J'ai essayé la requête mais j'obtiens aucune valeur.
    Voici ce que j'ai dans ma colonne normalement
    Nom : 1.PNG
Affichages : 123
Taille : 51,0 Ko

    Et voici ce que j'obtiens en modifiant votre requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select * from 
    (select invoice_month
    from dm_invoice_pat
    where prestation_rgpt ='T'
    and invoice_month in ('11' || to_char(sysdate, 'yyyy'), '11' || to_char(trunc(sysdate, 'y') - 1, 'yyyy'))
    order by to_date(invoice_month, 'mm/yyyy') desc
    )
    where rownum = 1
    Nom : 2.PNG
Affichages : 117
Taille : 79,4 Ko

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 175
    Par défaut
    ok tu as un slash, il faut l'ajouter alors

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select * from 
    (select invoice_month
    from dm_invoice_pat
    where prestation_rgpt ='T'
    and invoice_month in ('11/' || to_char(sysdate, 'yyyy'), '11/' || to_char(trunc(sysdate, 'y') - 1, 'yyyy'))
    order by to_date(invoice_month, 'mm/yyyy') desc
    )
    where rownum = 1

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/01/2010, 10h47
  2. Obtenir le mois courant en Latex
    Par gonadostimuline dans le forum Mise en forme
    Réponses: 0
    Dernier message: 11/12/2007, 18h30
  3. Obtenir la lettre de la dernière colonne vide.
    Par arnold95 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 23/10/2007, 08h01
  4. Obtenir le Mois d'avant
    Par zooffy dans le forum Access
    Réponses: 6
    Dernier message: 03/01/2007, 12h36
  5. MySQL: obtenir les résultats de la dernière insertion
    Par TNorth dans le forum Requêtes
    Réponses: 2
    Dernier message: 31/05/2006, 17h44

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