SQL查询,在过去一年中访问过谁



我在SQL查询方面遇到问题。特别是这个,它是这样的。

我有两张桌子,病人和来访者。

CREATE TABLE patients (
   ID_patients INTEGER NOT NULL,
   Name VARCHAR NOT NULL
);

CREATE TABLE visit(
    ID_visit INTEGER NOT NULL,
    DATE_visit DATE NOT NULL,
    FK_patients INTEGER NOT NULL
);

现在我想提出一个问题,告诉我过去一年里有哪些患者就诊?我不是指2015年,而是指BETWEN(今天365天)和(今天730天)。我希望有人能给我一些有用的建议。

select * from visit
where DATE_visit between
CURRENT_DATE - interval 2 year and CURRENT_DATE - interval 1 year;

尝试获取所有patients名称:

SELECT patients.name 
  FROM patients, visit
 WHERE patients.id = visit.fk_patients
   AND DATE_visit BETWEEN CURRENT_DATE - interval '2' year AND CURRENT_DATE - interval '1' year;

最新更新