Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/02/2012, 08h16   #1
Invité régulier
 
Homme Cheick Ahmed
Étudiant
Inscription : janvier 2012
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Cheick Ahmed
Localisation : Burkina Faso

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : janvier 2012
Messages : 7
Points : 7
Points : 7
Par défaut Erreur d'écriture SQL

Salut,

j'ai écrit la requête suivante pour trouver les couples noms clients, noms de produits commandés :
Code :
1
2
3
4
SELECT client.id, produit.id 
  FROM client
       INNER JOIN commande
       INNER JOIN produit ON client.id = commande.id_client AND commande.id_produit = produit.id;
Ça ne marche pas il doit y avoir une erreur dans l’écriture

Table produit
 Nom                                       NULL ?   Type
 ----------------------------------------- -------- ------------
 ID                                        NOT NULL NUMBER(5)
 NOM                                                VARCHAR2(20)
 PRIX_UNITAIRE                                      NUMBER(8,2)
 PRODUCTEUR                                         NUMBER(5)
Table producteur
 Nom                                       NULL ?   Type
 ----------------------------------------- -------- ----------------
 ID                                        NOT NULL NUMBER(5)
 NOM                                                VARCHAR2(20)
Table commande
Nom                                       NULL ?   Type
----------------------------------------- -------- -------------
ID_CLIENT                                          NUMBER(20)
ID_PRODUIT                                         NUMBER(20)
QUANTITE                                           NUMBER(5)
happyboon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2012, 08h30   #2
Membre émérite
 
Homme Olivier Dehorter
Ingenieur de recherche - Ecologue
Inscription : juin 2003
Messages : 700
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dehorter
Localisation : France

Informations professionnelles :
Activité : Ingenieur de recherche - Ecologue

Informations forums :
Inscription : juin 2003
Messages : 700
Points : 844
Points : 844
Et en essayant comme cela ?
Code :
1
2
3
4
5
SELECT Client.Id,
       Produit.Id
  FROM Client
    INNER JOIN Commande ON Client.Id = Commande.Id_client
    INNER JOIN Produit ON Commande.Id_produit = Produit.Id
dehorter olivier est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/02/2012, 10h16   #3
Membre confirmé
 
Homme
Développeur informatique
Inscription : octobre 2006
Messages : 181
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : octobre 2006
Messages : 181
Points : 267
Points : 267
Bonjour,

Il faut peut etre respecter la casse de tes noms de champs ( en majuscule ).

Et il faudrait aussi nous joindre le resultat ( resultat de la requete avec eventuellement les messages d'erreur).
Jean.Cri1 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 10/02/2012, 14h19   #4
Membre Expert
 
Avatar de lola06
 
Femme Laure
Consultante en Business Intelligence
Inscription : avril 2007
Messages : 983
Détails du profil
Informations personnelles :
Nom : Femme Laure
Âge : 25
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Consultante en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : avril 2007
Messages : 983
Points : 1 693
Points : 1 693
A noter aussi que ta requête renvoi les identifiants et non les noms comme demandé.

Donc :

Code :
1
2
3
4
5
SELECT c.nom, p.nom
FROM client c
INNER JOIN Commande cmd ON c.Id = cmd .Id_client
INNER JOIN Produit p ON cmd .Id_produit = p.Id 
@Jean.Cri1 : la casse n'est pas respectée dans SQL (nom <=> Nom <=> NOM)
__________________
~ Lola ~

Ne pas oublier :
et aussi :
lola06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h48.


 
 
 
 
Partenaires

Hébergement Web