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

DB2 Discussion :

Soustraire 3 mois sur un champ numérique


Sujet :

DB2

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut Soustraire 3 mois sur un champ numérique
    Bonjour,

    Je n'arrive pas a soustraire 3 mois à une date de naissance dans un champs numéric, j'ai essayé avec current date - 3 months mais c'est sans succès.

    Auriez vous une idée ?

    SELECT * FROM medcpofg/sptml0 WHERE PBDOB <((cuurdate,'YYYYMMDD'
    )-3 months)

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 134
    Points : 38 557
    Points
    38 557
    Billets dans le blog
    9
    Par défaut
    voici une solution possible :

    SELECT CURRENT DATE - 3 MONTHS FROM SYSIBM.SYSDUMMY1 ;

  3. #3
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 134
    Points : 38 557
    Points
    38 557
    Billets dans le blog
    9
    Par défaut
    Exemple avec une date contenue dans une zone decimal(9,0) ...
    ... et oui on rencontre des choses bizarres dans les bases de données

    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
     
     SELECT DATED9                                           
           ,DIGITS(DATED9)                                   
           ,DATE(                                            
            SUBSTR(DIGITS(DATED9), 02, 04)!!'-'!!            
            SUBSTR(DIGITS(DATED9), 06, 02)!!'-'!!            
            SUBSTR(DIGITS(DATED9), 08, 02)) - 03 MONTHS      
     FROM TAB100
     FETCH FIRST 10 ROWS ONLY ;  
     
    Ce qui donne :
     
      DATED9   £1        £2         
      20130905 020130905 2013-06-05 
      20070116 020070116 2006-10-16 
      20120801 020120801 2012-05-01 
      20141003 020141003 2014-07-03 
      20140806 020140806 2014-05-06 
      20140806 020140806 2014-05-06 
      20131231 020131231 2013-09-30 
      20140409 020140409 2014-01-09 
      20140818 020140818 2014-05-18 
      20140807 020140807 2014-05-07 
    *******************************

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

Discussions similaires

  1. Condition sur un champ numérique
    Par vatmx dans le forum Langage
    Réponses: 8
    Dernier message: 22/04/2013, 11h10
  2. [AC-2007] Filtrer sur un champ numérique avec OpenReport
    Par siriusalpha dans le forum IHM
    Réponses: 1
    Dernier message: 05/02/2011, 08h02
  3. [SP-2007] Recherche sur un champ numérique
    Par rohstev dans le forum SharePoint
    Réponses: 1
    Dernier message: 14/10/2010, 14h49
  4. Point décimal (.) sur un champs numérique
    Par tleboukaka dans le forum Bases de données
    Réponses: 11
    Dernier message: 02/02/2010, 09h52
  5. Réponses: 8
    Dernier message: 06/02/2006, 14h34

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