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

Développement de jobs Discussion :

update avec une autre valeur


Sujet :

Développement de jobs

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 53
    Points
    53
    Par défaut update avec une autre valeur
    Bonjour
    N'ayant pas réussit a faire sous talend, un filtre sur une date qui depend d'une autre table avec le composant tfilter

    j'ai essayé ceci mais ca ne marche pas parfaitement ( separement les deux requete sont bonne, mais ensemble j'ai pas le resultat escompté.
    J'ai besoins de tout les enregistrement d'une table, seulement quand la date de celle ci est superieur a une date de mise a jour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * from table1where date_cloture > TO_DATE((SELECT DATE_MAJ FROM DATE_MAJ where TYPE='comptable'),'YYYY-MM-DD')
    est ce que j'ai oubliqué quelques chose ?

  2. #2
    Membre habitué Avatar de bbl22
    Inscrit en
    Février 2009
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 114
    Points : 127
    Points
    127
    Par défaut
    il y a-t-il une seule date de mise à jour dans la table DATE_MAJ c'est-à-dire il y a t-il une seule ligne?
    S'il y a plusieurs lignes tu doit avant tout faire une jointure ou rajouter la condition dans ton where
    Si c'est le cas, tu fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * from table
    WHERE date_cloture > (select date from date_maj ...)
    AND ..............
    ou si les 2 tables ont un identifiant comment tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * from table t
    LEFT JOIN date_maj d
    ON t.id = d.id
    WHERE t.date_cloture > d.date_maj

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 61
    Points : 53
    Points
    53
    Par défaut
    J'ai mis la condition where = "comptable" et ca me donne bien une seul date, pour la jointure, ce n'est pas possible, dans cette table que j'ai crée je stock seulement la date de mise a jour

  4. #4
    Membre habitué Avatar de bbl22
    Inscrit en
    Février 2009
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 114
    Points : 127
    Points
    127
    Par défaut
    OK, si c'est qu'une seule ligne alors ce que tu fais est juste (table1 et where sont collé, mets un espace) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM table1 
    WHERE date_cloture > TO_DATE((SELECT DATE_MAJ 
                              FROM DATE_MAJ 
                              WHERE TYPE='comptable'),'YYYY-MM-DD')
    sinon si ton champ DATE_MAJ est au même format que date_cloture, tu n'as qu'à faire directement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM table1 
    WHERE date_cloture > (SELECT DATE_MAJ 
                              FROM DATE_MAJ 
                              WHERE TYPE='comptable')
    Mais la première méthode devrait marcher

Discussions similaires

  1. Pb UPDATE d'une table avec une autre table
    Par Korben-Dallas dans le forum Requêtes
    Réponses: 50
    Dernier message: 07/02/2013, 17h09
  2. Réponses: 3
    Dernier message: 21/10/2008, 21h52
  3. Réponses: 0
    Dernier message: 06/02/2008, 17h09
  4. UPDATE avec une valeur MAX
    Par Bobtop dans le forum Requêtes
    Réponses: 5
    Dernier message: 10/06/2006, 12h08
  5. Réponses: 8
    Dernier message: 11/08/2005, 09h32

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