Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3067 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  conseil pour big requete SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

conseil pour big requete SQL

n°1782730
donny3
Posté le 04-09-2008 à 17:25:30  profilanswer
 

Salut,
 
Je dois faire une jointure entre deux tables pour rajouter de l'infos dans une table que je n'ai pas.
 
1ere table  

Citation :


infoplus ( cod1,codpi,codomaine,infoplus)


 
2eme table

Citation :


clientinfo ( codclient,codpiclient,codetablissement,codpietablissement,coddomaine)


 
Dans la 1ere table, j'ai mon infos suplementaire et dans les colonnes :
cod1 = j'ai soit le codclient soit codetablissement
codpi = j 'ai soit codpiclient soit codpietablissement
coddomaine = c est le domaine du client
en faite dans cette table j'ai les infos du client, de l etablissement et du domaine et du client;
 
dans la table clientinfo j'ai ce genre d'infos :

Citation :


codclient codpiclient codetablissement  codpietablissement  coddomaine
1         fr          1                 fr                  1
1         fr          1                 fr                  2
2         fr          1                 fr                  1
2         fr          2                 fr                  2


 
je n'arrive pas a voir comment faire pour avoir pour chaque client,domaine et etablissement sont information;
 
c'est clair que je ne peux pas faire de jointure direct entre ses deux tables.
je pensai à faire trois tables à partir de la 1ere table :
une table pour client (cod1,codpi,codomaine,infoplus)
une table pour etablissment (cod1,codpi,codomaine,infoplus)
une table domaine (cod1,codpi,codomaine,infoplus)
 
et faire ensuite 3 jointure successive comme ceci

Citation :


clientinfo.codclient = infoplus.cod1
clientinfo.codpiclient = infoplus.codpi
 
clientinfo.codetablissement = infoplus.cod1
clientinfo.codpietablissement = infoplus.codpi
 
clientinfo.codclient = infoplus.cod1
clientinfo.codpiclient = infoplus.codpi
clientinfo.coddomaine = infoplus.coddomaine


 
est-ce lourd ?faisable ?
 
Merci de votre aide
 
 
 

mood
Publicité
Posté le 04-09-2008 à 17:25:30  profilanswer
 

n°1782733
omega2
Posté le 04-09-2008 à 17:34:19  profilanswer
 

J'ai pas saisie les différents type de cas que tu veux obtenir en retour, mais avec les jointure ("left inner join", "left outer join", ...) et les unions ("ma première requête" union "ma seconde requête" union " ma troisième requête" ) c'est possible.

n°1782796
donny3
Posté le 04-09-2008 à 20:23:38  profilanswer
 

en faite dans la table infoplus j'ai ceci:
Les clé(clé composé) des client,etablissement (cod1,codtech,codpi)
et la clé des domaines du client (cod1,codtech,codpi,coddomaine) et la validation pour chaque clé

Citation :


cod1 codtech codpi coddomaine validation
1 x fr 1  N
1 v fr 2  O
1 x fr   O
1 v fr   O  
1 g fr   O
2 r fr 1  O
2 u fr 2  N
2 r fr   O
2 u fr   O
2 m fr   O
 
 


 
et pour la table client info j ai ceci plustot,j avais oublier les colonnes codtech

Citation :


codclient codtechclient codpiclient codetablissement  cotecheta codpietablissement  coddomaine  
1         x  fr          1                 g  fr                  1  
1         v  fr          1                 g  fr                  2  
2         r  fr          1                 g  fr                  1  
2         u  fr          2                 m  fr                  2  


 
Ce que j'essai d'avoir en sorti, c'est la colonne validation pour chaque clés.
 
 

Citation :


codclient codtechclient codpiclient valclient codetablissement  cotecheta codpietablissement  valeta coddomaine valdomaine  
1         x  fr           O  1                 g  fr             O      1   N
1         v  fr           O  1                 g  fr             O     2   O
2         r  fr           O  1                 g  fr             O      1   O
2         u  fr           O  2                 m  fr             O      2   N

n°1799567
donny3
Posté le 13-10-2008 à 17:13:51  profilanswer
 

personne ne voit ?

n°1800079
donny3
Posté le 14-10-2008 à 16:42:03  profilanswer
 

est-ce possible en pl/sql ?

n°1800106
MagicBuzz
Posté le 14-10-2008 à 17:19:12  profilanswer
 

c'est d'un clair...
 
dans ta table des infos, qu'est-ce qui te permet de détecter s'il s'agit de codes client ou de codes établissements dans tes deux champs cod1 et codpi ?

n°1800107
MagicBuzz
Posté le 14-10-2008 à 17:21:08  profilanswer
 

sinon, franchement, c'est une bête jointure avec 3 alias et des critères de jointure différents, je crois pas ce qu'il y a de complexe là dedans... faudrait juste savoir comment relire ta table surtout

n°1800129
donny3
Posté le 14-10-2008 à 18:01:05  profilanswer
 

arf desolé, j'ai resolu ce post en faite,
je pensai que c etait un autre, plus complexe


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  conseil pour big requete SQL

 

Sujets relatifs
Manipuler une BdD (Access ou SQL) en VBSSQL reporting services, exporter rapport => XLS
[Resolu][C#, ASP.net / access] problème requete update[SQL Server]Concaténation des résultats d'une requête SQL
[SQL] Créer une base/une tablefaire retouner plusieurs ligne a une requete
Méthode(s) de connexion SQL ?![SQL] Oubli auto_increment sur ID
editeur SQL pour Access 
Plus de sujets relatifs à : conseil pour big requete SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR