|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Lucie Inscription : juin 2009 Messages : 10 ![]() |
Bonjour,
J'ai besoin de faire ressortir une valeur texte selon la sélection d'une date comprise entre une date de début et de fin. Pour illustrer mon besoin voici la table des périodes: Période Début Fin P-1-2010 1 avril 2010 24 avril 2010 P-2-2010 25 avril 2010 22 mai 2010 P-3-2010 23 mai 2010 19 juin 2010 P-4-2010 20 juin 2010 17 juillet 2010 P-5-2010 18 juillet 2010 14 août 2010 P-6-2010 15 août 2010 11 septembre 2010 P-7-2010 12 septembre 2010 9 octobre 2010 P-8-2010 10 octobre 2010 6 novembre 2010 P-9-2010 7 novembre 2010 4 décembre 2010 P-10-2011 5 décembre 2010 1 janvier 2011 P-11-2011 2 janvier 2011 29 janvier 2011 P-12-2011 30 janvier 2011 26 février 2011 P-13-2011 27 février 2011 31 mars 2011 (ma table comprend également des données pour l'année 2009-2010) Bref, je voudrais que lorsqu'une date sélectionnée est comprise entre le début et la fin, qu'il en résulte le champ intitulé Période. Faut dire que j'aurai à faire une requête également sur le champ Période afin d'en extraire d'autres données relationnelles. J'apprécie grandement votre aide. |
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonsoir Weiyin,
Si j'ai bien tout compris : Code sql :
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
||
|
|
20
|
|
|
#3 |
|
Invité de passage
![]() Lucie Inscription : juin 2009 Messages : 10 ![]() |
Bonjour,
Suite à mon dernier message, est-ce qu'une "requête mise à jour" serait plus appropriée? Je m'explique: À partir de la tblInfoPatient j'aurai à saisir au cours du temps, une date dans le champ DateRef ainsi que dans le champ DatePEC. J'ai crée une tblPeriodes qui référencie les périodes grâce à une DateDebut et une DateFin. J'aimerais être en mesure de pouvoir faire ressortir une liste des informations en interrogeant uniquement une période donnée (ex. période P-1-2010 - qui représenterait toutes les dates saisies entre le 1er avril 2010 et le 24 avril 2010 soit dans le champ DateRef ou DatePEC) Je continue de chercher la façon de faire et si quelqu'un pouvait jeter un coup d'oeil à ma base que je joins en annexe, j'apprécierais grandement http://cjoint.com/?0bsqYttIdS |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Weiyin,
Remettons, d'abord, ta base "à plat" : j'y vois pas mal d'anomalies. tblCliniques : C'est IdClinique qui doit être la clé primaire, pas NomClinique. tblCSSSautre : IdCSSSautre doit être en clé primaire. tblInfoPatient : IdPatient doit être en clé primaire. tblMedecins : Supprimer N°, modifier IdMedecin en NuméroAuto et mettre IdMedecin en clé primaire. tblProvenance : C'est IDProvenance qui doit être la clé primaire, pas Provenance. Recréer les relations en fonction des remarques précédentes. Questions : Qu'est censée représenter la table tblCSSSautre ? Peux-tu ce que représente tblPeriodes, tblPeriodePEC, tblPeriodeRef, tblPriorite et tblProvenance ? Ensuite, nous pourrons essayer de comprendre ce que tu veux faire.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Lucie Inscription : juin 2009 Messages : 10 ![]() |
Bonjour Richard,
Tout d'abord merci d'avoir pris de votre temps pour regarder ma bd. Tel que vous me suggériez, j'ai replacé les clés primaires sur les libellés ID* mais en conséquence il me devient impossible d'afficher une feuille de sous-données à cause des relations basées sur les clés primaires en format de numérotation automatique. Les "tblCliniques", tblCSSS autres", "tblMédecins", "tblProvenance", et "tblPriorité" ont été crées dans un premier temps pour être utilisées en listes déroulantes sur la feuille de données "tblInfoPatient". La "tblPeriodes" représente les périodes financière dont la date est comprise entre une DateDebut et une DateFin. J'aimerais que les dates qui seront entrées dans les champs "DateReference" ainsi que DatePEC (qui signifie pour moi, une date de prise en charge) puissent être utilisées en faisant une requête à savoir: quels sont les patients qui ont été référés en "P-1-2010", "P-2-2010" etc, et quels sont les patients pris en charge (PEC) en "P-1-2010, "P-2-2010" etc... Pour les tables "tblPeriodeRef" et "tblPeriodePEC".... je ne savais pas encore quoi en faire; elles n'ont peut-être aucune utilité. Serait-ce possible de faire apparaître le nom de la période par une requête selon la date saisie dans "DateReference" et "DatePEC". Merci encore et encore |
|
|
00
|
|
|
#6 | ||||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Weiyin,
Citation:
Citation:
Code sql :
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
||||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Lucie Inscription : juin 2009 Messages : 10 ![]() |
Bonjour Richard,
J'ai modifié les clés primaires tel que vous me l'aviez demandé - mais je me questionne en ce qui concerne la tblCliniques et la tblMedecins car la relation devrait-elle pas être "un à plusieurs" - la clinique ayant plusieurs médecins à son emploi. La requête que vous m'avez suggéré fonctionne mais ne me donne pas le résultat que je veux utiliser ultérieurement - je m'explique: Je souhaite donc pouvoir illustrer : la liste des patients référés en "P-1-2010", "P-2-2010" etc, et quels sont les patients pris en charge (PEC) en "P-1-2010, "P-2-2010" etc... en interrogeant uniquement la période et non pour une date spécifique. Je joins ma base selon vos recommandations. Merci http://cjoint.com/?0buphgIYu8r |
|
|
00
|
|
|
#8 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour Weiyin,
Les relations entre les tables s'effectuent en faisant glisser le champ d'origine vers le champ de destination. Par exemple, tu fais pointer tblCliniques vers tblInfoPatient avec IdClinique vers IdPatient : cela veut dire que tu veux faire correspondre un numéro de clinique avec un numéro de patient... D'autre part, quand tu dis : Citation:
Pour obtenir cela, il faut les tables suivantes : tblCliniques : IdClinique (clé primaire, numéro auto) NomClinique ... ==> ta table est OK. tblMedecins : IdMedecin (clé primaire, numéro auto) NomMedecin (et non pas NomClinique...) IdClinique ... ==> copier/coller intempestif pour le nom du champ ; ==> ajout de l'IdClinique. Relation : tblCliniques 1----n tblMedecins, via IdClinique. Cela, en supposant, qu'un médecin ne peut pas être dans plusieurs cliniques : il faudrait que tu confirmes/infirmes. Fort de cet exemple, peut-être pourrais-tu revoir l'ensemble de tes tables avec les bonnes relations reliant les bons champs entre eux.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Lucie Inscription : juin 2009 Messages : 10 ![]() |
Bonjour Richard,
J'ai fait ce que vous suggériez, sauf que lorsque je retourne dans la tblCliniques, la sous-feuille de données demande une valeur de paramètre NomMedecin.... j'obtenais le résultat souhaité lorsque la clé était sur NomClinique dans la tblMedecins. Je confirme qu'un médecin n'est que dans une seule clinique, et qu'une clinique a plusieurs médecins. Dans un premier temps, j'aimerais me concentrer sur la façon d'obtenir le résultat concernant mes période financières, pouvez vous regarder seulement les tables concernant les périodes, après je me concentrerai sur les relations et les clés des différentes tables : Je souhaiterais donc pouvoir illustrer : la liste des patients référés en "P-1-2010", "P-2-2010" etc, et quels sont les patients pris en charge (PEC) en "P-1-2010, "P-2-2010" etc... en interrogeant uniquement la <souligne>période correspondante à la date</souligne> et non pour une date spécifique. Je vous remercie encore de votre grande gentillesse. |
|
|
00
|
|
|
#10 | |||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Sans des tables correctement construites avec les relations adéquates, tu ne pourras pas t'en sortir.
Citation:
Sinon, si tu veux retrouver une période à partir d'une date, comme il me semble l'avoir compris, je t'ai suggéré une requête : Code sql :
En tout état de cause, il faudrait "remettre à plat" les tables et les relations avant de faire quoi que ce soit.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|||
|
|
10
|
|
|
#11 | ||||
![]() ![]() Maintenance données produits Inscription : décembre 2005 Messages : 3 939 ![]() |
Bonsoir,
1) Je te suggère vivement de suivre les conseils de Richard_35, concernant la structure de tes tables, et leurs relations entre elles. 2) Pour récupérer la période correspondant à une date. Par exemple pour récupérer la période de la table tblPeriodes à la date DateReference de la table tblInfoPatient. Code :
A partir de cette clé, à laquelle on donne l'alias ClePeriode, les autres Dlookups ramènent le nom et les dates de début et fin. 3) Pour récupérer les patients pris en charge par période Code :
A+ |
||||
|
|
20
|
Copyright © 2000-2012 - www.developpez.com