Pb sur une requete sql

Résolu/Fermé
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 - 28 sept. 2007 à 10:04
xkristi Messages postés 4264 Date d'inscription lundi 18 décembre 2006 Statut Membre Dernière intervention 19 août 2022 - 2 oct. 2007 à 13:13
Bonjour,

Voilà, j'ai un pb sur une requète sql qui devrait agire sur trois tables, le problème c'est qu'elle ne renvoi rien du tout (même pas une erreur...)

je met déjà la structure des 3 tables concernées

-etablissement (numeta, nometa, ad1eta, ad2eta, cpeta,vileta)
-panne (numpan, datpan, despan, datfinpan, respan, #numtyppan, #numeta)
-type_panne (numtyppan, nomtyppan)

et ça c'est ma requete

SELECT * FROM etablissement, panne, type_panne WHERE panne.numeta=etablissement.numeta
AND panne.numtyppan=typ_panne.numtyppan
AND respan ='1'

merci

12 réponses

Bonjour,

Après ton dernier AND essayes panne.respan='1'
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
28 sept. 2007 à 10:48
Ben je pense pas que le pb vienne de là : j'ai éssayé sans mettre le derneir AND mais celà ne génère rien non plus
0
Bonjour,

Deuxième ligne tu as écrit typ_panne à la place de type_panne
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
28 sept. 2007 à 11:15
vi excsue moi, c'est juste une coquille lorsque j'ai recopié mar rq (je sais je sais j'aurais pu faire un copier coller....)


sinon j'ai essayé ça et là par contre une erreur est retorunée

SELECT etablissement.nometa, panne.datpan, panne.despan, type_panne.nomtyppan
FROM type_panne
INNER JOIN (etablissement INNER JOIN panne ON etablissement.numeta = panne.numeta) ON type_panne.numtyppan = panne.numtyppan


et l'erreur :

#1064 - You have an error in your SQL syntax near ''type_panne'
INNER JOIN ( etablissement
INNER JOIN panne ON 'etablissem at line 2
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dans ta requête, dans ton 1er AND, tu utilise typ_panne.numtyppan or apparemment ta table s'appelle type_panne.

Il doit considérer cette donnée comme une constante.

Cdt.
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
28 sept. 2007 à 11:25
dwp29 --> voir un peu plus haut, c'est une erreur lorsque j'ai recopié, il ne faut pas en tenire compte ;)
0
Essayes ce qui suit, je l'ai fait avec le générateur de requêtes de windev:

SELECT Etablissement.numeta AS numeta,
Etablissement.nometa AS nometa,
Etablissement.ad1eta AS ad1eta,
Etablissement.ad2eta AS ad2eta,
Etablissement.cpeta AS cpeta,
Etablissement.vileta AS vileta,
Panne.numpan AS numpan,
Panne.datpan AS datpan,
Panne.despan AS despan,
Panne.datfinpan AS datfinpan,
Panne.respan AS respan,
Panne.numtyppan AS numtyppan,
Panne.numeta AS numeta_Pa,
Type_panne.numtyppan AS numtyppan_Ty,
Type_panne.nomtyppan AS nomtyppan
FROM Panne, Type_panne, Etablissement
WHERE Panne.numeta = etablissement.numeta
AND Panne.numtyppan = type_panne.numtyppan
AND Panne.respan = '1'
0
xkristi Messages postés 4264 Date d'inscription lundi 18 décembre 2006 Statut Membre Dernière intervention 19 août 2022 564
28 sept. 2007 à 13:57
Bonjour !

question :
c'est quoi ton dièse #numtyppan dans
panne (numpan, datpan, despan, datfinpan, respan, #numtyppan, #numeta)
que l'on ne retrouve pas dans
-type_panne (numtyppan, nomtyppan)
0
Bonjour,
Ta requete est bien faite mais seulement enleve le diese là devant les clés secondaires,puisque si ton MLD est mal llibele ta requete ne doit pas marcher et essaye ceci:

SELECT * FROM Etablissement, Panne, Type_panne
WHERE panne.numeta=Etablissement.numeta
AND Panne.numtyppan=Type_panne.numtyppan
AND Panne.respan ='1'
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
2 oct. 2007 à 08:10
Bon en fait je vais reprendre...

Les dièses, je les ai mis là... je me demande encore porquoi sachant que je ne les ai pas mis sur les noms de champs sur ma bdd.... (il y a des trucs qui passe par la tête des fois... on se demande)

Ensuite tout manquement de lettre est seulement une erreur lorsque j'ai posté mon message et n'existe ni sur ma requete ni dans ma base.

Clara > merci du conseil mais j'ai déjà essayé....


Et que pensez vous de cela : (posté plus haut mais personne n'a réagi alors...)

SELECT etablissement.nometa, panne.datpan, panne.despan, type_panne.nomtyppan
FROM type_panne INNER JOIN (etablissement INNER JOIN panne ON etablissement.numeta = panne.numeta) ON type_panne.numtyppan = panne.numtyppan

le pb cest que j'ai une erreur qui remonte suite à cette requète :

#1064 - You have an error in your SQL syntax near ''type_panne' INNER JOIN ( etablissement INNER JOIN panne ON 'etablissem at line 2
0
milo1986 Messages postés 126 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 30 août 2011 22
2 oct. 2007 à 11:44
Bon ben j'ai trouvé

Je poste la solution apr laquelle je suis passé au cas où...

SELECT * FROM panne LEFT JOIN etablissement ON panne.numeta=etablissement.numeta LEFT JOIN type_panne ON panne.numtyppan=type_panne.numtyppan WHERE respan='1'
0
xkristi Messages postés 4264 Date d'inscription lundi 18 décembre 2006 Statut Membre Dernière intervention 19 août 2022 564
2 oct. 2007 à 13:13
Bonjour !
C'est sympa à toi de penser aux autres
Merci
0