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 :

Requête SQL et Date


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Par défaut Requête SQL et Date
    Bonjour à tous,
    j'ai un petit souci avec une requête sql qui fait un select from une vue.
    le critère de restriction est une date (EventDate > à une certaine date)
    lorsque je fais EventDate > sysdate -2 cela fonctionne bien
    lorsque je fais EventDate > To_Date('06/25/2007','MM/DD/YYYY') la requête ne semble jamais se terminer
    Si quelqu'un a une petite idée
    Merci d'avance

  2. #2
    Membre émérite Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Par défaut
    quel sgbd ?

  3. #3
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Par défaut Requête SQL et Date
    Je travaille sur ORACLE 8.1.7

  4. #4
    Membre éprouvé
    Inscrit en
    Juin 2003
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 107
    Par défaut
    Tu peux essayer sans TO_DATE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    select * from table1 a where a.date_creation > '01/01/2006';

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select * from table1 a where a.date_creation > TO_DATE ('01/01/2006', 'dd/mm/yyyy');

  5. #5
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Par défaut Requête SQL et Date
    Malheureusement j'obtient la meme chose
    Voila la Vue:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    CREATE VIEW LOTS_TEMOINS_PROD_VIEW (
          LOT,
          TEMOIN,
          DEVICE,
          TECHNO,
          EVENTDATE,
          PROCESS,
          EQPID,
          ETAPE,
          RECETTE,
          PHASE,
          DCS,
          EVENT#,
          PARM#,
          VALUE,
          CVALUE
    )
    AS ( SELECT
          LE1.LOT,
          LE2.LOT,
          DV.DEVICE,
          DV.TOP_VER,
          LE1.EVENTDATE,
          DV.DEVCAT,
          LE1.EQP,
          LE1.SUBPROC1,
          LE1.SUBPROC2,
          L.TOP_PROCESS,
          LE1.DCS,
          ME.EVENT#,
          ME.PARM#,
          ME.VALUE,
          ME.CVALUE
    FROM 
       MEASUREMENTS ME, LOTEVENTS LE1, LOTEVENTS LE2, LOTEVENTS LE3, LOTS L, DEVICES DV
    WHERE 
       LE1.DCS         = 'PROMIS'                        AND 
       LE2.DCS         = 'PROMIS'                        AND 
       LE1.EQP         = LE2.eqp                         AND 
       LE1.LOT         = L.LOT                           AND 
       LE1.LOT         like 'B%'                         AND 
       LE2.LOT         like 'ZZ%'                        AND 
       ( LE1.EVENTDATE - LE2.EVENTDATE ) < 0.02          AND 
       ( LE1.EVENTDATE - LE2.EVENTDATE ) > 0             AND 
       LE3.DCS         = 'ASPC_CPK'                      AND 
       LE3.LOT         = LE2.LOT                         AND 
       LE3.Eqp         like 'OMNIMAP%'                   AND 
       ME.EVENT#       = LE3.EVENT#                      AND 
       (LE1.EQP        like '620%' or LE1.EQP like 'GSD%') AND 
       LE1.DEVICE      = DV.DEVICE
    );
     
    grant select on LOTS_TEMOINS_PROD_VIEW to public;
    et ma requete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select LOT,
          TEMOIN,
          DEVICE
    from LOTS_TEMOINS_PROD_VIEW
    where eventdate > To_Date('06/25/2007','MM/DD/YYYY');
    et celle qui fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    where eventdate > sysdate -2;

  6. #6
    Membre éclairé Avatar de LBO72
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 406
    Par défaut
    Salut,

    Je viens de faire la même chose que toi sur une table dans en environnement 8.1.7 et je n'ai pas de souci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    z7057hp/)>desc sinistre
     Name                                                                                                 Null?    Type
     ---------------------------------------------------------------------------------------------------- -------- ----------------
     CLASSE                                                                                                        VARCHAR2(50)
     LAUTEURCLASSEMENT                                                                                             NUMBER
     BLOCNOTES                                                                                                     VARCHAR2(1024)
     DATEAR                                                                                                        DATE
     DATEDECLARATION                                                                                               DATE
     DATEPRISECONNAISS                                                                                             DATE
     DATESINISTRE                                                                                                  DATE
     ETATSINISTRE                                                                                                  VARCHAR2(15)
     HEURESINISTRE                                                                                                 DATE
     
    z7057hp/)> select count(*) from sinistre where datedeclaration < sysdate - 2
     
     COUNT(*)
    ---------
         3916
     
     row selected.
     
    7057hp)> select count(*) from sinistre where datedeclaration < '26/06/2007'
     
     COUNT(*)
    ---------
         3916
     
     row selected.
    A mon avis, le pb vient de ta table ou ta vue elle même.. pas bien créées ...
    LBO72

  7. #7
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    Citation Envoyé par michel31
    where eventdate > To_Date('06/25/2007','MM/DD/YYYY');

    et celle qui fonctionne
    where eventdate > sysdate -2;
    que te donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    where eventdate > date '2007-06-25'

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

Discussions similaires

  1. Pb requête SQL erreur date
    Par swissland dans le forum C++Builder
    Réponses: 3
    Dernier message: 07/04/2008, 15h53
  2. Requête SQl et dates
    Par ZIED dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 01/11/2007, 18h08
  3. Requête SQL avec date
    Par loreleï85 dans le forum VB 6 et antérieur
    Réponses: 17
    Dernier message: 12/03/2007, 14h11
  4. Requête sql avec date en paramètre
    Par Mihalis dans le forum Bases de données
    Réponses: 1
    Dernier message: 08/03/2007, 22h29
  5. Requête SQL avec date
    Par misscricri dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 20/02/2007, 17h13

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