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

Oracle Discussion :

Sélection des enregistrements du mois M-1 dans Oracle7


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15
    Par défaut Sélection des enregistrements du mois M-1 dans Oracle7
    Bonjour à tout,
    Par cette requête ci-dessous, je souhaite visualiser dans une base donnée Oracle7 et cela tous les mois, les enregistrements du mois M-1 à une date précise. Soit le 5 de chaque mois.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT     *
    FROM         INCIDENTS
    WHERE    (TO_CHAR(DATE_HEURE_DEBUT, 'YYYY/MM/DD') >= TO_CHAR((to_date('01/' || to_char(sysdate,'MM/YYYY'))-1), 
    'YYYY/MM') || '/01') AND  (TO_CHAR(DATE_HEURE_DEBUT, 'YYYY/MM/DD') < TO_CHAR(sysdate, 
    'YYYY/MM') || '/01')
    Mais elle ne donne rien.
    Exemple: je veux transférer ou faire un SELECT des enregistrements du mois d'Avril 2009 le 5 mai 2009.

  2. #2
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Tu peux essayer comme suit

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM   INCIDENTS
    WHERE  TO_CHAR(DATE_HEURE_DEBUT,'YYYYMM') = TO_CHAR(add_months(SYSDATE,-1),'YYYYMM');

  3. #3
    Invité
    Invité(e)
    Par défaut
    je pense qu'il est temps d'utiliser les fonctions adéquates au lieu de s'amuser à convertir en caractères...
    Niveau performance et indexes, ça serait mieux !

    Essaie-ça, j'ai pas testé mais c'est une piste plus propre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT *
    FROM INCIDENTS
    WHERE  
    DATE_HEURE_DEBUT >= ADD_MONTHS( TRUNC(SYSDATE, 'MONTH'), -1 )
    AND 
    DATE_HEURE_DEBUT < TRUNC ( SYSDATE , 'MONTH' )

  4. #4
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    OK,

    peut etre effectivement que en Oracle 7 , mieux vaux ... ne pas utiliser to_char

    En 10G , le plan est le meme , le temps d'execution est le meme ...
    il passe dans les deux cas en INDEX FAST FULL SCAN

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par fatsora Voir le message
    En 10G , le plan est le meme , le temps d'execution est le meme ...
    il passe dans les deux cas en INDEX FAST FULL SCAN
    Même avec un index sur la date ?

  6. #6
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Surtout avec un index sur la date ...

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

Discussions similaires

  1. [WD12E] Sélection des enregistrements dans une fenêtre RAD
    Par nambours dans le forum WinDev
    Réponses: 4
    Dernier message: 26/04/2010, 10h16
  2. Requête sélection des enregistrements avec une '
    Par Vodjedi dans le forum Langage SQL
    Réponses: 3
    Dernier message: 01/04/2009, 17h57
  3. Insertion des enregistrements d'une table temporaire dans un état
    Par Chayanne47 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 18/04/2008, 12h46
  4. Sélection des enregistrements du mois
    Par vlksoft dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/09/2007, 00h36
  5. Recherche des enregistrements du mois précédent
    Par xenos dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/07/2007, 14h14

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