我如何使用外键和连接从mysql数据库获取我需要的信息

时间:2016-05-27 21:09:17

标签: mysql

我目前正在通过几个步骤实现这一目标,但如果我能通过一个查询找到我需要的东西会更好。我认为有可能使用连接和外键,但我无法弄清楚它们是如何一起工作的。

无论如何,我有两个表doctorsappointments,一个列与外键相关联(fk doctor_id,在id中引用doctors的约会)我需要在一定的时间范围内获得约会日期,并将doctor_id链接到doctors表中的匹配ID,并从该表中获取姓名和电话号码。

以下是我提出的连接声明:

SELECT a.doctor_id, a.appointment_date, b.last_name, b.preferred_phone 
FROM appointments a,doctors b 
WHERE a.appointment_date BETWEEN NOW() AND NOW() + INTERVAL 3 DAY

这给了我所有的医生,并说他们的ids都是3,但事实并非如此(这是一个自动递增栏),但是我需要与约会相关联的医生id 。那么如何用外键实现呢?

1 个答案:

答案 0 :(得分:1)

您可以添加联接的条件:a.doctor_id = b.id

SELECT a.doctor_id, a.appointment_date, b.last_name, b.preferred_phone 
FROM docflight_appointments a, docflight_doctors b 
WHERE a.doctor_id = b.id
  AND a.appointment_date BETWEEN NOW() AND NOW() + INTERVAL 3 DAY