|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
Bonjour,
Je suis désolé mais je sens que je vais impatienter bien des gens avec ma question de débutant, ceci dit, pris par le temps je poste ma question (et aussi parce que je m'y retrouve mal avec le tutoriel sur les jointures, disposant d'une vieille version de ACCESS au travail). Voila, je fais une requête qui fait appel à deux tables, dans ma table 1 j'ai un nom de deal (finance), l'agence de notation qui le note, l'ancienne note et la nouvelle note. Comme suit : DEAL___________AGENCE____________RATING FROM________NEW RATING Deal 1__________Moody's_______________Ba1________________Caa3 Deal 2___________S&P__________________BB-________________CCC+ Deal 3___________Moody's_______________Ba3_______________Caa2 Deal 4___________Fitch_________________BB+________________CCC- Dans une autre table, j'ai construis une correspondance des ratings entre agences : S&P________MOODY'S_________FITCH___________RATING GENERAL BB___________Ba1_____________BB____________________BB BB+__________Ba2_____________BB+__________________BB BB-__________Ba3_____________BB-____________________BB CCC__________Caa1___________CCC____________________CCC CCC-_________Caa2____________CCC-_________________CCC CCC+_________Caa3___________CCC+___________________CCC En fait, chaque agence utilise beaucoup une échelle de rating différente mais j'aimerai changer chaque rating par mon "rating général" et dans une nouvelle table, ou plutot requête, pouvoir afficher une liste avec les nouveaux ratings à la place des anciens. Exemple ici j'aimerai donc obtenir : DEAL___________AGENCE__________RATING FROM_______NEW RATING Deal 1__________Moody's_____________BB_________________CCC Deal 2___________S&P________________BB_________________CCC Deal 3___________Moody's____________BB_________________CCC Deal 4___________Fitch______________BB__________________CCC Pour ensuite pouvoir construire un tableau croisé dynamique sous excel sans avoir cinquante milles ratings en lignes et en colonne mais uniquement mon BB et mon CCC (qui ne sont que des exemples puisque la liste finale des mes ratings sera AAA AA A BBB BB B ainsi de suite jusqu'à D ..) Mais le tout en ayant enlevé les occurences style - ou + ou aa1 aa2 aa3. Est ce que je suis clair? Merci à celui qui pourra m'aider, si je suis aidable
|
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() ![]() |
Salut
Peux-tu donner une version française de tes expressions. Je remarque par ailleurs que certaines expressions comme "S&P" sont à la fois en-tête de colonne et donnés de ligne. BBB ou AAA ou CCC signifient quoi? La seule chose que j'ai bien compris c'est que tu ne veux plus voir +,-,2... à la suite des AAA ...
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
Merci de ta réponse !
En fait en majuscule ce sont les titres des colonnes. Quand j'écris AGENCE, il s'agit du titre de ma colonne, et les lettres AAA, AA, A, BBB, BB, B etc. sont les notes attribuées par ces agences. DEAL_________AGENCE________RATING FROM________NEW RATING Deal 1________Moody's__________BBB+_________________BB- Ca se lirait : le deal 1 a été noté par l'agence Moody's (le nom de l'agence de notation), son ancien rating (notation) est de BBB+ et son nouveau rating est de BB-. Et le résultat que je recherche serait dans une nouvelle table de voir apparaitre ces ratings mais BBB à la place de BBB+ et BB à la place de BB-. Du coup je me suis fais une table de correspondance (le titre des colonnes en gras) : S&P________MOODY'S_________FITCH___________RATING GENERAL BB___________Ba1_____________BB____________________BB BB+__________Ba2_____________BB+__________________BB BB-__________Ba3_____________BB-____________________BB CCC__________Caa1___________CCC____________________CCC CCC-_________Caa2____________CCC-_________________CCC CCC+_________Caa3___________CCC+___________________CCC Qui se lit comme tel pour la 1ère ligne en italique par exemple: quand l'agence de notation S&P attribue un BB, l'agence de notation Moody's attribue un Ba1 (note équivalente) et l'agence de notation Fitch attribue BB (note équivalente) et moi j'aimerai que maintenant toutes ces notes deviennent BB. C'est comme si tous les profs notaient sur 20 et un prof notait sur 10 ses élèves. Alors pour le prof qui note 2/10 à un élève, je voudrai en important dans la nouvelle table que ca se change d'un seul coup en 4/20. Car si l'agence de notation S&P et Fitch ont la même échelle de rating comme tu peux le voir, l'agence Moody's note différement, et je cherche donc à faire des conversions. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
Bonjour,
Ca serait sans doute plus simple pour la suite si ta table de correspondance avait cette allure : AGENCE________RATING ________RATING GENERAL Moody's__________Ba1_________________BB La clé de la table étant le couple (Agence/Rating).
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
Et donc faire une table pour chaque agence ?
Table1 AGENCE_________RATING___________RATING GENERAL Moody's_________AAA+_____________AAA Moody's_________AAA-_____________AAA Moody's_________Ba1_______________BB .... Table2 AGENCE_________RATING___________RATING GENERAL S&P_________AAA+_____________AAA S&P_________AAA-_____________AAA S&P_________BB+_______________BB ........ Table3 AGENCE_________RATING___________RATING GENERAL Fitch_________AAA+_____________AAA Fitch_________AAA-_____________AAA Fitch_________BB+_______________BB ........ A vrai dire je m'en fiche un peu de la manière de procéder, du moment que ca marche.. Merci de ton aide
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
Non, une seule table pour toutes les agences.
Ensuite, une requête entre cette table et l'autre DEAL_________AGENCE________RATING FROM________NEW RATING Deal 1________Moody's__________BBB+_________________BB- Te donnera DEAL_________AGENCE________RATING GENERAL FROM________NEW RATING GENERAL Deal 1________Moody's__________BBB+_________________BB-
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
![]() Comme ça ? |
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
Code :
Sachant que dans la table ListRating, qui est celle que j'ai mis en fichier image au dessus, access ne me laisse pas définir "rating" comme clé primaire en me disant que je dois d'abord autoriser les "duplications".. need help. |
||
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
La clé primaire est unique.
C'est donc le couple Agence/Rating qui doit être la clé primaire. Ensuite la jointure entre AllRatings et ListRating doit se faire sur l'Agence et le Rating. De plus, la table ListRating doit être en double dans la requête, pour avoir le RatingGénéral équivalement au RatingFrom et celui équivalent au NewRating
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
OK, quand je paramètre mes tables, ACCESS refuse de définir l'Agence en tant que clé primaire parce qu'il y a des champs NULL. Comment y remédier?
Tu es certain que ce champs peut être défini comme primaire? Car il n'y a que trois agences et 50 000 lignes peuvent contenir la même agence de notation, ce qui renvoit donc la même valeur pour un nombre multiple de lignes. Merci. |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
La clé primaire doit être sur Agence/Rating.
Pourquoi y-a-t-il des lignes avec l'Agence à Null ? Pour un couple Agence/Rating, tu n'as qu'un seul Rating General.
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 7 ![]() |
![]() J'avais 5 enregistrements avec des champs nuls que j'ai supprimé. Maintenant le message d'erreur stipule qu'on ne peut définir RatingAgency (AGENCE) comme clé primaire puisqu'il y a des champs "dupliqués". Je suppose des champs de même valeurs, et qu'il faut tout d'abord autoriser les champs dupliqués. Mais comment? |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 1 111 ![]() |
On ne parle pas de la même table.
Je parle de la table dans laquelle il y a les champs "Agence", "Rating" et "RatingGeneral" (sans espace, sans accent, c'est mieux). La clé doit être sur le couple Agence/Rating. Sur ta table AllRatings, la clé est sur ID. Il y a peut-être aussi un index unique.
__________________
[Access] Les bases du débogage => ici |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com