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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] Logique de Conception

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL] Logique de Conception

n°2051903
massanu
Posté le 26-01-2011 à 09:51:02  profilanswer
 

Bonjour a tous :)
 
J'ai actuellement une problématique à résoudre et j'hésite entre différents schéma de conception SQL.
 
Je vous expose brièvement la situation et mon analyse :
 
Nous disposons d'une table Score : contenant un score et un statut
 
idScore | idStatut |
----------------
1000    |     2
1200    |     3
 
Nous voulons  
 - Chaque Score associé à un ensemble de 6 dates
 - Chaque couple (Score + statut) associé une date
 
 
 
Exemple :
idScore = 1000 ==> Date1 / Date2 / Date3 / Date4 / Date5 / Date6
 
idScore = 1000 & idStatut = 3 ==>  Date3
 
Pour trouver ces dates, chaque idStatut correspond à un type de Date :
 
idStatut | typeDate
1          |   Date1
2          |   Date2
3          |   Date3
4          |   Date4
5          |   Date5
6          |   Date6
 
 
Voila comment j'ai conçu le truc :
 
Score
idScore  | idStatut |
------------------
1000     |     2
1200     |     3
 
StatutDate
idStatut | idType |
------------------
    1      |     1
    2      |     1
    3      |     2
    4      |     3
 
TypeDate
idType   | libellé  |
------------------
    1      |  Date1
    2      |  Date2
    3      |  Date3
 
Dates
 idScore  | idType |     Date     |
------------------------------
1000      |     1    |  10/01/2010
1000      |     2    |  15/01/2010
1000      |     3    |  18/01/2010
1000      |     4    |  10/01/2010
1000      |     5    |  15/01/2010
1000      |     6    |  18/01/2010
 
1200      |     1    |  10/01/2010
1200      |     2    |  15/01/2010
1200      |     3    |  18/01/2010
1200      |     4    |  10/01/2010
1200      |     5    |  15/01/2010
1200      |     6    |  18/01/2010
 
Ca me permet en faisant 3 jointures de récupérer pour chaque ligne de Score la Date du statut en cours
 
 
J'ai l'impression que c'est compliqué comparé au besoin, donc si vous avez une petite idée n'hésitez pas :)
 
Merci d'avance et bon courage pour cette journée qui commence :jap:


Message édité par massanu le 26-01-2011 à 09:52:21

---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
mood
Publicité
Posté le 26-01-2011 à 09:51:02  profilanswer
 

n°2051905
smaragdus
whores, drugs & J.S. Bach
Posté le 26-01-2011 à 10:04:45  profilanswer
 

Peut être que j'ai pas compris un truc mais pourquoi ne pas faire :
 
Score  
 idScore  | idType |     Date     |  
------------------------------  
1000      |     1    |  10/01/2010  
1000      |     2    |  15/01/2010  
 
si Date est une propriété de la classe d'assoc entre score et type ?
 
 :??:

Message cité 1 fois
Message édité par smaragdus le 26-01-2011 à 10:06:08
n°2051925
massanu
Posté le 26-01-2011 à 10:45:28  profilanswer
 

smaragdus a écrit :

Peut être que j'ai pas compris un truc mais pourquoi ne pas faire :
 
Score  
 idScore  | idType |     Date     |  
------------------------------  
1000      |     1    |  10/01/2010  
1000      |     2    |  15/01/2010  
 
si Date est une propriété de la classe d'assoc entre score et type ?
 
 :??:


 
Car une date est lié à un score et son statut en cours.
Le statut d'un score peut varier au cours du temps, donc la date courant également. On viendra piqué la bonne date dans sa collection de 6 selon son statut en cours.


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2051928
smaragdus
whores, drugs & J.S. Bach
Posté le 26-01-2011 à 10:48:35  profilanswer
 

ok en fait c'est ça que j'aurais du écrire :
 
Assoc_Score_Statut  
 idScore  | idStatut |     Date     |  
------------------------------  
1000      |     1    |  10/01/2010  
1000      |     2    |  15/01/2010

Message cité 1 fois
Message édité par smaragdus le 26-01-2011 à 10:49:03
n°2051934
massanu
Posté le 26-01-2011 à 11:02:49  profilanswer
 

smaragdus a écrit :

ok en fait c'est ça que j'aurais du écrire :
 
Assoc_Score_Statut  
 idScore  | idStatut |     Date     |  
------------------------------  
1000      |     1    |  10/01/2010  
1000      |     2    |  15/01/2010


 
Pour les raisons suivantes ca pose problème :
 
1°) Car selon le modèle actuel et le code existant, idScore doit être unique dans la table de Score
2°) Les types de date doivent avoir un libellé
3°) L'association des type de date et des statuts peut être amené à bouger


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2051944
smaragdus
whores, drugs & J.S. Bach
Posté le 26-01-2011 à 11:17:27  profilanswer
 

Relis le nom que j'ai donné à la table :o

n°2051950
massanu
Posté le 26-01-2011 à 11:33:39  profilanswer
 

smaragdus a écrit :

Relis le nom que j'ai donné à la table :o


 
 
:lol: Pardon
 
Mais compare ta table, à ma table "Dates" dans le premier post :p


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
n°2052184
Oliiii
Posté le 27-01-2011 à 08:12:58  profilanswer
 

C'est peut etre parceque c'est le matin, mais je pige rien a ton explication.
 
Concretement, vous avez quoi, vous voulez quoi et quelles sont les contraintes?
 
Si possible avec un exemple avec des vrai données, qui refletent ce que vous avez/voulez, qui contient des cas normaux et particuliers :)
 
La en un coup d'oeuil la Date de ta table Dates devrai plutot etre dans la table typeDate, sinon le reste a l'air correctement normalisé.

n°2052704
TotalRecal​l
Posté le 28-01-2011 à 15:12:13  profilanswer
 

C'est l'après midi et j'ai pas tout pigé non plus. Une explication du problème concret à modéliser plutôt qu'un résumé des trucs et des machins qui vivent ensemble aiderait certainement à la compréhension...


Message édité par TotalRecall le 28-01-2011 à 15:12:25

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2052919
massanu
Posté le 29-01-2011 à 18:41:16  profilanswer
 

:lol: moi même en rédigeant le post je trouvais ca pas très compréhensible :lol:
 
Je prépare une explication plus concrète :)
 


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
mood
Publicité
Posté le 29-01-2011 à 18:41:16  profilanswer
 

n°2054115
E-Nyar
I ain't no nice guy after all
Posté le 03-02-2011 à 17:50:16  profilanswer
 

massanu a écrit :

:lol: moi même en rédigeant le post je trouvais ca pas très compréhensible :lol:
 
Je prépare une explication plus concrète :)
 


 
Le suspens est insoutenable :o


---------------
Don't fuck me, I'm anonymous.

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

  [SQL] Logique de Conception

 

Sujets relatifs
requete SQL qui ne donne pas le bon resultat[SQL SERVER 2008] : Parametre OUTPUT qui sort pas
[erreur]DAO.Recordset et Req SQL[vbs] Help- Connexion à une base de donnée SQL
REGEXP en SQLRequête SQL selon conditions
SQL et UnionDeconcatener SQL sous ACCESS
SQL: une somme toute bête[SQL] - Restauration sans NDF ?
Plus de sujets relatifs à : [SQL] Logique de Conception


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