Deine Frage ist mir überhaupt nicht klar. Sie sprechen zum Beispiel davon, dass Patienten und Krankenschwestern mit „Priorität“ und Ärzte mit „Zeit“ und „Priorität“ verknüpft sind – und Sie schreiben, als ob dies andere Tabellen wären – aber Sie beschreiben sie nicht.
Unten ist, wie ich Ihr Problem lösen würde, basierend auf dem nebligen Verständnis, das ich von Ihrem Problem habe.
Ich weiß nicht, was A&E bedeutet. Ich nehme an, es handelt sich um eine Klinik, ein Krankenhaus oder eine andere Einrichtung.
aes
id unsigned int(P)
street_address varchar(75)
city_id unsigned int(F cities.id)
postcode varchar(10) // Whatever the size of your postal code.
telenumber varchar(10) // Whatever the size of your telenumber.
Offensichtlich könnte Ihr "Zustand" anders sein. Hier in den Vereinigten Staaten haben alle Bundesstaaten einen eindeutigen zweistelligen Code.
cities
id unsigned int(P)
name varchar(50)
state_id char(2)(F states.id)
Sie haben nicht beschrieben, was Sie über Ärzte wissen müssen, also gehe ich davon aus, dass es dasselbe ist, was Sie über Krankenschwestern wissen müssen.
doctors
id unsigned int(P)
forename varchar(50)
surname varchar(50)
Dinge wie:Grippe, Bronchitis, Nasennebenhöhlenentzündung usw.
illnesses
id unsigned int(P)
description varchar(75)
nurses
id unsigned int(P)
forename varchar(50)
surname varchar(50)
Ich habe die Krankengeschichte in eine eigene Tabelle eingefügt, damit wir jedem Patienten mehrere Krankheiten zuordnen können, sowie ein Datum, an dem der Patient jede Krankheit hatte.
patient_history
id unsigned int(P)
patient_id unsigned int(F patients.id)
illness_id unsigned int(F illnesses.id)
qwhen date
patients
id unsigned int(P)
forename varchar(50)
surname varchar(50)
gender enum('f','m')
dob date
street_address varchar(75)
city_id unsigned int(F cities.id)
postcode varchar(10) // Whatever the size of your postal code.
telenumber varchar(10) // Whatever the size of your telenumber.
Auch hier können Ihre "Staaten" eine andere Größen-ID oder einen anderen Namen haben.
states
id char(2)(P)
name varchar(50)
Dinge wie:Schwindel, Müdigkeit, Verstopfung der Nasennebenhöhlen, Kurzatmigkeit usw.
symptoms
id unsigned int(P)
description varchar(50)
Diese Tabelle enthält Informationen zu jedem Besuch eines Patienten in einer Notaufnahme. Jeder Datensatz ohne end_time würde einen Patienten darstellen, der sich derzeit in einer Notaufnahme befindet und darauf wartet, von einem Arzt/einer Krankenschwester gesehen zu werden. Sie können feststellen, wie lange ein Patient gewartet hat, indem Sie die aktuelle Zeit mit der beg_time vergleichen. Und natürlich würde die Priorität vom aufnehmenden Angestellten, der Krankenschwester, dem Arzt usw. eingegeben/aktualisiert.
visits
id unsigned int(P)
patient_id unsigned int(F patients.id)
nurse_id unsigned int(F nurses.id)
ae_id unsigned int(F aes.id)
priority unsigned tinyint // 1 = Critical, 2 = Urgent, 3 = whatever...
beg_time datetime
end_time datetime
Ein Patient kann von mehreren Ärzten behandelt werden...
visits_doctors
id unsigned int(P)
visit_id unsigned int(F visits.id)
doctor_id unsigned int(F doctors.id)
Und mehrere Krankenschwestern können einen Patienten behandeln...
visits_nurses
id unsigned int(P)
visit_id unsigned int(F visits.id)
nurse_id unsigned int(F nurses.id)
Ein Patient hat normalerweise mehrere Symptome, wenn er zu einem Besuch kommt...
visits_symptoms
id unsigned int(P)
visit_id unsigned int(F visits.id)
symptom_id unsigned int(F symptoms.id)