我已经看到了其他的答案,但我的问题是不同的,因为我想得到两个日期之间的差异,并在where
条款中使用它,但它要求我输入天来获得差异。日期来自我的数据库。
Select datediff(D, cid, ced) as theDateDiff
from customers
Select datediff(D, cid, ced) as theDateDiff
from customers where theDateDiff>=5
假设cid
和ced
是customers
表中的字段,您可以尝试以下方法:
select * from customers c where datediff("d", c.cid, c.ced) >= 5
请考虑以下两个涉及MS Access SQL的问题:
SELECT *
FROM (SELECT *, DateDiff("d", cid, ced) AS theDateDiff
FROM customers) sub
where theDateDiff >= 5
D
作为第一个参数的版本。请记住,即使在同一母公司下,关系数据库世界中也没有两种方言完全相同。
因此,用DateDiff(D, cid, ced)
取代DateDiff("d", cid, ced)
。
为了引用除Microsoft之外的另一个例子,Oracle(公司)现在管理MySQL,这是一个非常不同的RDBMS,与旗舰数据库有很多不同的方言:Oracle。