【问题标题】:How to get difference between numbers with same dates in oracle?如何在oracle中获得相同日期的数字之间的差异?
【发布时间】:2018-12-01 21:02:40
【问题描述】:

我有这样的表:

PK     COUNTER     READ     READ_DATE
1         1         1       1/1/2017
2         1         2       1/1/2017
3         1         3       1/12/2018
4         4         4       1/12/2018

READ_DATE 第 2 列中,相同的日期具有不同的数字。

如果用户选择 2 个日期,例如 Start_Date(1/1/2017)End_date(1/12/2018)

我想从READ 列中获得相同日期的两个数字之间的差异。

如何在oracle中编写sql查询?

【问题讨论】:

  • 您希望从您发布的数据中得到什么结果?
  • 与同一日期的“READ”列不同
  • 针对您展示的示例数据发布您希望获得的准确答案。您的问题也不清楚start_dateend_date 的重要性。这些名称表明您可能希望将其视为一个范围并捕获其间的所有内容。您要给出两个日期,样本数据中的每个日期都有 2 个条目,所以我们有 4 个条目,但您说要计算 2 个数字之间的差异。四个中的哪两个?
  • 添加示例输出

标签: oracle oracle10g oracle-sqldeveloper


【解决方案1】:

如果您只想要绝对差异,您可以尝试一个简单的GROUP BY 查询:

SELECT
    READ_DATE,
    MAX(READ) - MIN(READ) AS diff
FROM yourTable
GROUP BY
    READ_DATE;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-01
    • 1970-01-01
    • 2023-03-22
    • 2021-08-27
    • 2014-10-07
    • 2014-03-15
    • 1970-01-01
    相关资源
    最近更新 更多