【问题标题】:Access SQL: How select the smallest difference between two datesAccess SQL:如何选择两个日期之间的最小差异
【发布时间】:2017-02-23 10:58:27
【问题描述】:

我的 SQL 代码有问题。我希望你能帮助我... :)

条件是:

->显示产品的最新价格!

因为产品的价格可能会在一段时间后发生变化。 所以我对查询的想法是,

从currentdate和dateofmodification之差最小的product中选择productname。

但我不知道如何在 SQL 代码中正确表述这一点?有人可以帮我吗?

谢谢

亲切的问候!

【问题讨论】:

  • 您可以选择 currentdate 和 dateofmodification 之间的日期差异,并按该 asc 排序并取第一行
  • 帮助我们帮助您 - 请分享表格结构、一些示例数据以及您希望为该示例获得的结果。
  • 分享表结构和示例
  • 表名是DAILYVALUES,表示产品的每日购买和销售情况,表示一个产品可以列出多次,我需要最新的值..

标签: sql ms-access


【解决方案1】:

你根本不需要datediff()。假设dateofmodification 的所有值都是过去的:

select top 1 productname
from product 
order by dateofmodification desc;

对于修改日期,这似乎是一个非常合理的假设。

注意:通过不在列上使用函数,SQL引擎可以使用索引,大大加快了查询速度。

【讨论】:

  • 是的。无需将事情复杂化。
猜你喜欢
  • 2015-06-21
  • 2016-01-15
  • 1970-01-01
  • 1970-01-01
  • 2011-04-20
  • 1970-01-01
  • 2021-10-21
  • 2023-03-23
  • 1970-01-01
相关资源
最近更新 更多