我在我的数据库中有三张桌子,一张是病人,一张是他们的温度,另一张桌上是病人的身份证和温度的ID作为主键。如何通过mysql检索所有患者的温度信息?
病人表;
+----+------+--------+------------+
| id | name | gender | birth |
+----+------+--------+------------+
| 1 | Hind | F | 2015-01-01 |
| 2 | Saad | M | 2016-01-01 |
+----+------+--------+------------+
patient_info表:
+------+------+
| id_t | id_p |
+------+------+
| 1 | 1 |
| 1 | 2 |
| 2 | 3 |
| 2 | 4 |
+------+------+
下表:
+----+-------------+
| id | temperature |
+----+-------------+
| 1 | 37.9 |
| 2 | 37 |
| 3 | 38 |
| 4 | 38.4 |
+----+-------------+
所以,我想要的是检索所有患者的温度,这里是我做了什么:
mysql> SELECT p.*, t.* FROM patient p INNER JOIN patient_info pi ON pi.id_p = p.id INNER JOIN temperature t ON t.id = pi.id_t;
+----+------+--------+------------+----+-------------+
| id | name | gender | birth | id | temperature |
+----+------+--------+------------+----+-------------+
| 1 | Hind | F | 2015-01-01 | 1 | 37.9 |
| 2 | Saad | M | 2016-01-01 | 1 | 37.9 |
+----+------+--------+------------+----+-------------+
但tha t不是我想要的,我需要知道所有Hind和Saad的温度 谢谢全部
我认为你的ID是在你的Patient_Info表上,或者你的示例数据是坏的。您向我们展示了两位ID为“1”和“2”的患者,但您的Patients_Info表(字段id_p)中有4位患者。您无法在患者3和4上显示临时信息,因为患者表中不存在这些信息。 – JNevill
是的。这里只有两个病人,每个病人都有一个温度读数(两个读数都相同) - 虽然为什么温度有它自己的表格超出了我! – Strawberry
@JNevill你是对的,我的错误,谢谢:) –