【问题标题】:How to calculate in SQL Server range of dates without using specific dates? [closed]如何在不使用特定日期的情况下计算 SQL Server 日期范围? [关闭]
【发布时间】:2019-09-03 02:14:01
【问题描述】:

我有一个关于作业的问题:

编写一个 SQL 查询以显示在取货日期前至少一周进行的交易的所有详细信息。

我们被指示不要为此分配进行硬编码(例如,不要查看表中的值来确定如何计算)。无论输入值如何,我们都要让代码计算解决方案。

我有一个Transaction 表,其中有一个TransactionDate 和一个PickupDate 列,两者都以YYYY-MM-DD 格式定义为date 数据类型。

我是 SQL Server 的新手,并且一直在绞尽脑汁想如何做到这一点。任何正确方向的指导将不胜感激!

【问题讨论】:

  • 请求家庭作业帮助的问题必须包括您迄今为止为解决问题所做的工作的摘要,以及您在解决问题时遇到的困难的描述。请阅读How to ask homework questionsedit 你的帖子。

标签: sql-server date-range


【解决方案1】:

你可以简单地使用 where 子句:

SELECT * 
FROM TRANSACTION
WHERE TRANSACTION_DATE < DATEADD(DAY, -7,  PICKUP_DATE);

在这里,我们将TRANSACTION_DATEPICKUP_DATE 减去一周进行了比较,它将包括取货前一周进行交易的所有记录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-15
    • 2020-04-18
    • 2014-01-06
    相关资源
    最近更新 更多