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

Informix Discussion :

Requête sur plusieurs tables


Sujet :

Informix

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Requête sur plusieurs tables
    Salut à tous.
    Je fais face à un problème que j'espère sera résolu grâce à votre collaboration.
    Le problème est le suivant: je dispose de plusieurs tables dans ma base de données, ces tables ont un nom générique du genre table_data_xxx où xxx représente le numéro d'ordre de création de la table. Toutes ces tables ont la même structure. J'aimerais pouvoir sélectionner tous les enregistrements de toutes ces tables qui satisfont à un critère particulier (color=blue), et ce à l'aide si possible d'une seule et unique commande. Est-ce possible, si oui comment écrire une telle requête? Sinon existe-t'il une autre possibilité d'arriver au même résultat? je dois préciser que je travaille sous environnement Linux, avec Informix Dynamic Server Version 7.31.UD6W5.
    Merci pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut Une fonction récursive dans un shell
    Bonjour,

    Tout dépend du nombre de tables. Si ce nombre est « raisonnable » et que les noms de ces tables sont connus, une requête à base d’UNION peut suffire mais je ne pense pas que ce soit la réponse que tu attends. Sinon ça doit pouvoir se faire avec un shell contenant une fonction s’exécutant autant de fois qu’il est prévu de tables dans une liste (un fichier).

    Le shell crée d’abord la liste des tables à traiter puis appelle la fonction qui exécute en batch une requête SQL sur une table dont le nom paramétré correspond à l’item de la liste en cours de traitement par la fonction.

    La création de la liste des tables à traiter (nom générique = « table_data_ » ) doit pouvoir se réaliser par une requête SQL exécutée en batch sur la table système « SYSTABLES ». Enfin… J’aurais fait comme ça avec Informix-SQL mais je ne connais pas les tables système d’Informix Dynamic Server.

    Je peux te proposer un squelette de shell à adapter à ton environnement de travail mais c’est sans garantie car je ne pratique plus...
    Dernière modification par Invité ; 23/03/2009 à 10h35.

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Merci pour ta proposition
    Bonjour IFA2377,
    Je suis entièrement preneur de la solution que tu as à me proposer, bien sûr je tâcherai de l'adapter à mon environnement.
    Si nécessaire voici mon mail, willibrod@hotmail.com

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

Discussions similaires

  1. suite au problème de requête sur plusieur table
    Par michelGProuq dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 07/07/2006, 16h19
  2. [VB6] RecordSet, Oracle, requête sur plusieurs Tables
    Par pier* dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 13/04/2006, 10h19
  3. Requête sur plusieurs tables
    Par sta_schmitt dans le forum Requêtes
    Réponses: 2
    Dernier message: 28/03/2006, 13h54
  4. Requéte sur plusieurs tables
    Par polux23 dans le forum Requêtes
    Réponses: 11
    Dernier message: 23/02/2006, 23h00
  5. Requête sur plusieurs tables
    Par drinkmilk dans le forum Langage SQL
    Réponses: 8
    Dernier message: 11/07/2005, 12h25

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