#1 Thu 16 March 2006 14:10
- jmbuton
- Participant assidu
- Date d'inscription: 28 Sep 2005
- Messages: 235
Requete SQL et cardinalité
J'ai une tabe graphique A de contour de communes avec chacune un numero INSEE.
J'ai une autre table B, non graphique, associant à certain numero INSEE, des dates (ex : date de maj de POS)
Info :
certaines communes n'ont pas de date associée, et n'apparaissent donc pas dans ma table B.
certaines communes apparaissent deux fois dans ma table B (deux dates associées)
Lorsque je fais une requete SQL avec une jointure sur le numero INSEE, ma table graphique resultat ne contient que les communes ayant une date. Or je veux que ma table resultat reprennent bien sur toute les communes et affichent les dates de celles qui en contiennent une.
Je pencherait pour un probleme de cardinalité dans la relation entre les deux tables...
ex : 1-->n , 1-->1, n-->1, etc.
Mais comment le resoudre. Quelqu'une aurait il une idée ?
Hors ligne
#2 Thu 16 March 2006 15:42
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Requete SQL et cardinalité
Bonjour,
La première partie est 'facile': commencer par une sélection de A,B où INSEE.A=INSEE.B into toto...
puis mettre à jour cette sélection toto: toutes les communes sont conservées, même les sans date.
Plus dur pour la seconde partie, heureusement il n'y a que 2 dates (!):
- soit préparer sous Excel un tableau avec un INSEE par ligne et pour les répétitions un contenu date1 / date2 (les tableaux croisés dynamiques d'Excel sont puissants)
- soit faire sous MI une manip en 2 fois: premier passage de mise à jour, puis destruction des ligne de B où INSEE.B=INSEE.A et date.B=date.A, enfin deuxième passage de mise à jour (avec concaténation de date1+" / "+date2)
Bon courage
Hors ligne