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

MS SQL Server Discussion :

problème dans une requete SELECT


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut problème dans une requete SELECT
    bonjour tout le monde
    j'ai 2 table
    personne(IDperonne,nom, prenom, poste, pays)
    Demande(IDdemande, description, Datedemande, IDpersonne)

    je veux afficher toutes les demandes et les personnes qui ont fait ces demande alors j'ai fait ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    select(Nom, Prenom, Description, Date from Personne, demande where Personne.IDpersonne IN(select IDpersonne from demande)
    mais comme résultat j'ai eu le produit cartésien

    où est le problème dans cette requete

    merci

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Vous n'avez tout simplement pas fait la jointure correctement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT
        Nom,
        Prenom,
        Description,
        Date
    FROM
        Personne
        INNER JOIN Demande
          ON Personne.IDpersonne = Demande.IDpersonne
    N'oubliez pas de prefixer avec les alias (ou au pire les noms des tables) toutes vos colonnes dès que vous avez plus d'une table dans une requête.

  3. #3
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut
    merci mais quand j'execute ma requete il me signe un probleme dans les 2 colonnes suivantes:description et date car ces colonnes n'existent pas dans la table personne
    meme si je ne mets pas ces colonnes ça pose problème dans les colonnes nom, prenom

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Voir la dernière ligne de mon précédent post

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Par défaut
    Bonjour,
    Dans la description de tables de ton premier post tu as une colonne dateDemande et par la suite elle semble devenir Date.

    Il n'y a que toi qui peut savoir comment s'appelle tes colonnes.
    A+
    Soazig

  6. #6
    Membre averti
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    14
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 14
    Par défaut
    Bonjour, tu peut faire comme t'a dis waldar tout en mettant les alias ou les noms des tes tables comme dans l'exemple suivants:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT
        Personne.Nom,
        Personne.Prenom,
        Demande.Description,
        demande.Date
    FROM
        Personne
        INNER JOIN Demande
          ON Personne.IDpersonne = Demande.IDpersonne
    ou tous donne les alias au tables comme ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT
        a.Nom,
        a.Prenom,
        b.Description,
        b.Date
    FROM
        Personne as a
        INNER JOIN Demande as b
          ON Personne.IDpersonne = Demande.IDpersonne
    Penser à cliquez sur

Discussions similaires

  1. encore un probléme dans une requete
    Par sarah_s dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 31/05/2007, 13h56
  2. Garder l'ordre des Records dans une requete select distinct
    Par pobrouwers dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 21/02/2007, 22h06
  3. executer une procedure stockées dans une requete SELECT
    Par bleuerouge dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/08/2006, 17h23
  4. Afficher le numéro de ligne dans une requete SELECT
    Par tilb dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/09/2004, 10h20
  5. Eviter plusieurs OR dans une requete SELECT
    Par zoubidaman dans le forum Requêtes
    Réponses: 2
    Dernier message: 13/06/2004, 05h56

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