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 27/10/2011, 02h08   #1
Nouveau Membre du Club
 
Inscription : septembre 2005
Messages : 181
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 181
Points : 37
Points : 37
Par défaut Probleme de requete

Bonjour,

Pour la requête qui suit, les résultats ne sont pas consistents avec ce qui a dans les tables. En fournissant un filtre sur 2 parametres (voir requête) on obtient moins d'enregistrements que si on ouvre les tables et que l'on fait le travail manuellement (visuellement). Je pense que ceux qui ont créer cette requête aurait du la faire en 2 temps; soit un requête basée sur le résultat d'une autre requête. Comme je ne suis pas un gars de DB, je ne suis pas sûr.

Dans cette requête, c'est le tblTEConfiguration.strSoftNo que l'on cherche à connaître,

Je ne peux vous donner le fichier .MDB puisque 130 Mb ni vous donner les résultats obtenus versus les résultats attendus. Par contre, voyez-vous une autre façon de formuler la requête?.

merci

Code :
1
2
3
SELECT tblResultSession.idsResultSession, tblResultSession.idsOracleResultSession, tblResultLineNumber.strPartNumber, tblTEConfiguration.strSoftNo
FROM tblTEConfiguration INNER JOIN ((tblResult INNER JOIN tblResultLineNumber ON tblResult.idsResult = tblResultLineNumber.idsResult) INNER JOIN tblResultSession ON tblResult.idsResult = tblResultSession.idsResult) ON tblTEConfiguration.idsTEConfiguration = tblResultSession.idsTEConfiguration
WHERE (((tblResultSession.idsOracleResultSession)<>0) AND ((tblResultLineNumber.strPartNumber)="245-604420-VAR"));
Images attachées
Type de fichier : jpg query.jpg (76,2 Ko, 7 affichages)
acheo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 08h30   #2
Membre émérite
 
Homme Tony
Développeur .NET
Inscription : novembre 2010
Messages : 570
Détails du profil
Informations personnelles :
Nom : Homme Tony
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : novembre 2010
Messages : 570
Points : 821
Points : 821
Salut,

quel est ton SGBD ? Access ?
Je pense que oui vu les parenthèses un peu partout =\
Logiquement voilà ce que devrais être ta requête :

Code :
1
2
3
4
5
6
7
SELECT tblResultSession.idsResultSession, tblResultSession.idsOracleResultSession, tblResultLineNumber.strPartNumber, tblTEConfiguration.strSoftNo
FROM tblTEConfiguration 
INNER JOIN tblResult ON tblTEConfiguration.idsTEConfiguration = tblResultSession.idsTEConfiguration
INNER JOIN tblResultLineNumber ON tblResult.idsResult = tblResultLineNumber.idsResult
INNER JOIN tblResultSession ON tblResult.idsResult = tblResultSession.idsResult
WHERE tblResultSession.idsOracleResultSession <>0
AND tblResultLineNumber.strPartNumber = '245-604420-VAR';
Mais je ne pense pas que ça soit un problème de syntaxe, essaye toujours, mais si ce n'est pas mieux donne nous un champs d'essai exemple qui devrait ressortir et ne ressort pas.
asmduty est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 08h41   #3
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 641
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 641
Points : 2 634
Points : 2 634
Citation:
Envoyé par acheo Voir le message
Bonjour,

Pour la requête qui suit, les résultats ne sont pas consistents avec ce qui a dans les tables. En fournissant un filtre sur 2 parametres (voir requête) on obtient moins d'enregistrements que si on ouvre les tables et que l'on fait le travail manuellement (visuellement). Je pense que ceux qui ont créer cette requête aurait du la faire en 2 temps; soit un requête basée sur le résultat d'une autre requête. Comme je ne suis pas un gars de DB, je ne suis pas sûr.

Dans cette requête, c'est le tblTEConfiguration.strSoftNo que l'on cherche à connaître,

Bonjour,

Les données que ramène la requête sont consistante.

Vu vos filtre sur les tables tblResultLineNumber et tblResultSession que vous souhaitez avoir je ne vois pas d'autre solution que la requête proposée.

Donc posez correctement votre besoin avec un exemple de donnée (restreint mais qui recouvre les différents cas possible)
punkoff 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 05h34.


 
 
 
 
Partenaires

Hébergement Web