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 SQL Server Discussion :

select from select ?


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 71
    Par défaut select from select ?
    Bonjour,
    j'ai une question je veux faire un select des nom des tables dema basepuis afficher son contenu.Je sais que c'est possible mais je trouve pas encore la solution.

    Merci pour vootre aide voil a la requete qui me donne une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * FROM (SELECT TABLE_NAME
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE  TABLE_CATALOG = 'MSDE_POS' AND column_name ='F902')

  2. #2
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Bonjour,

    Donnez un alias à votre sous requête et le tour est joué.

    Bonne journée

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 71
    Par défaut
    Dsl ca n'a pas marché,

    Car il me retourne le resultat de la sous-requete c'est comme je fait select de tout ce qui est le resultat de ma sous-requete (le resultat est le meme)

    moi je veux prendre le resultat de la sous requete comme nom de table pour la nouvelle selection : voila le resulat dela sous requete, il faut que je trouve une solution pour arreter la sous-requete ligne par ligne pour laffichage de ma grande raquete.


    REBATE_BAT
    CLT_ITM_TAB
    HEADER_OLD
    OPRICE_BAT
    COST_DCT
    OSPRICE_BAT
    MIX_DCT
    OTPRICE_BAT
    OCOST_BAT
    OALLOW_BAT

    merci

  4. #4
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Je ne comprend pas trop ce que vous souhaitez réaliser...

    Que souhaitez vous comme "grande requête" ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    select 
      *
    from
    REBATE_BAT,
    CLT_ITM_TAB,
    HEADER_OLD,
    OPRICE_BAT,
    COST_DCT,
    OSPRICE_BAT,
    MIX_DCT,
    OTPRICE_BAT,
    OCOST_BAT,
    OALLOW_BAT,
    Qui va générer le produit cartésien de toutes ces tables...

    Ou une série de requêtes genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    select * from REBATE_BAT
    select * from CLT_ITM_TAB
    select * from HEADER_OLD
    select * from OPRICE_BAT
    select * from COST_DCT
    Ou bien... ?

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 71
    Par défaut
    Je vpoulais dire le resultat de ta deuxieme explication. un resulat pour chaque table.
    car j'ai un champs en commun dans chaque tble que je vais droppper plus tard.donc je veux voir dans quelles tables existe ce champs avec ma condition .

    J'espere bien que j'ai bien expliqué.
    Merci

  6. #6
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Vous pouvez essayez ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    declare @cmd nvarchar(max)
     
    select @cmd = ISNULL(@cmd +  'Select * from ' + TABLE_NAME + ';' + CHAR(13),'') 
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE  TABLE_CATALOG = 'MSDE_POS' AND column_name ='F902'
     
    print @cmd
     
    -- exec sp_executesql @cmd
    Ici le code généré s'affichera.
    Si vous souhaitez l'exécuter, enlevez les commentaires de la dernière ligne.

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

Discussions similaires

  1. Select * from (select * from T)
    Par hadi2007 dans le forum Informix
    Réponses: 3
    Dernier message: 09/08/2009, 11h36
  2. select * from (select * from mabase) Impossible ?
    Par maniolo dans le forum Sybase
    Réponses: 9
    Dernier message: 04/03/2009, 13h33
  3. Réponses: 6
    Dernier message: 20/11/2007, 11h14
  4. Select From (select)
    Par rad_hass dans le forum DB2
    Réponses: 3
    Dernier message: 27/07/2007, 17h00
  5. Select from (select)
    Par benoitchabot dans le forum DB2
    Réponses: 1
    Dernier message: 08/02/2007, 21h08

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