Bonjour.
Ce n’est pas un problème de requête mais plutôt un problème de conception.
Voici l’ensemble de mes tables :
J’arrive à lier les tables (QRCorresp, Questions et Reponse)(QRCorresp.NIQ = QUESTION.NIQ et QRCorresp.NIR = Reponses.NIR)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Patient(PAT_ExternalId,NOM, PRENOM,PATRONYME,DATENAIS) Visite(Visite_Id,PAT_ExternalId,DB1_VisiteID,DB1_DATEVISITE,DB2_VisiteID,DB2_DATEVISITE) QRCorresp(NIQ,NIR,NIQSUP,NIRSUP,DB1_VisiteID,DB2_VisiteID) Questions(NIQ,LIBELLE,LIBABR,ORIGINE_DB) Reponses(NIR,REPONSE, UNITE)
J’arrive aussi à lié les deux tables (Patient et Visite) (Patient.ExternalId = Visite.ExternalId)
Mais je ne sais pas comment je peux lier les tables (Visite et QRCorresp)
Parce que je veux une structure qui me permet d’extraire les données en fonction de leur base d’origine.
Exemple (la requête est donnée juste à titre indicatif):
Pour la base DB1 je dois faire
mon problème est qu’au niveau conception je ne sais pas comment lier les tables (Visite et QRCorresp) parce que pour la base DB1 j’ai DB1_VisiteID comme champ commun entre les deux tables et pour la base DB2 j’ai DB2_VisiteID comme champ commun.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Select Patient.PAT_ExternalId, Patient.NOM, Visite.Visite_Id, Question. LIBELLE, Reponses.REPONSE from Patient,Visite, QRCorresp,Questions, Reponses Where (Patient.PAT_ExternalId = Visite.PAT_ExternalId) and (Visite.DB1_VisiteID = QRCorresp. DB1_VisiteID) and (QRCorres.NIQ = Questions.NIQ) and (QRCorresp.NIR = Reponses.NIR)
J’ai pensé à mettre le champ Visite. Visite_Id dans la table QRCorresp aussi. Mais comme je procède de cette manière : dans la table visite j’insère les données de la base DB1 donc il y a des Visite.Visite_Id qui sont généré automatiquement, à cette étape les champs Visite.DB2_VisiteID et Visite.DB2_DATEVISITE sont encore vide ; Donc je fais un mise à jour à partir de la base DB2 pour remplir ces champs.
Après j’inserts dans la même table Visite les données de base DB2 ne figurant pas dans la base DB1.
Et j’obtiens dans la table Visite des enregistrements de ce genre
est ce que vous me proposer de changer la structure la table Visite?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 7776,ELF21071977NAJ,KK000,15/10/2007 11:25, NULL, NULL 7777,ELF21071977NAJ,KK111,01/12/2007 10 :30, AA222, 01/12/2007 7778,ELF21071977NAJ,KK112,01/12/2007 14:00, AA222, 01/12/2007 7779,ELF21071977NAJ, NULL ,NULL , AA444, 14/12/2007
Si oui comment ?
Sinon comment je peux en gardant la structure actuelle, lier les tables Visite et QRCorresp ?
Je vous remercie d’avance.
Partager