在我的数据库中,我有患者记录,并且表中的列名称为Registered_Date
,其列格式为yyyy-mm-dd
,因此当我执行类似的查询时
SELECT Patient_ID,First_Name,Middle_Name,Last_Name
FROM Patient_Records
WHERE Registered_Date BETWEEN '2019-01-25' AND '2018-10-01'
没有结果...
如您所见,第一个日期大于第二个日期,但没有结果,但是,如果第一个日期小于第二个日期,将导致所有在选定日期注册的患者。
答案 0 :(得分:1)
一切正常。
BETWEEN
运算符在逻辑上等效于一对比较。x BETWEEN y AND z
等同于x >= y AND x <=z
因此,如果第一个日期大于第二个日期(即y > z
),则无论给出什么值(x
),该条件始终将被评估为false。