【问题标题】:how to get all version and latest iteration of object in the SQL如何在 SQL 中获取对象的所有版本和最新迭代
【发布时间】:2016-05-23 01:10:40
【问题描述】:

我对 SQL 很陌生...

我在名为versioniteration 的表中有如下数据。我想在 SQL (oracle) 中构建一个查询,以获取第二个表中的结果。请指导我如何做到这一点?

这里的部分在给定版本中被多次更改,每次更改导致迭代增加。

零件也可以更改为新版本,然后将分配迭代(编号)。

| Name          | Version       | Iteration  |
|===============|===============|============|
| Part 1        |      A        |    1       |
|:------------------------------------------:|
| Part 1        |      A        |    2       |
|:------------------------------------------:|
| Part 1        |      A        |    3       |
|:------------------------------------------:|
| Part 1        |      B        |    0       |
|:------------------------------------------:|
| Part 1        |      B        |    1       |
|:------------------------------------------:|
| Part 1        |      B        |    2       |
|:------------------------------------------:|
| Part 2        |      D        |    1       |
|:------------------------------------------:|
| Part 2        |      D        |    2       |
|:------------------------------------------:|
| Part 2        |      D        |    3       |
|:------------------------------------------:|
| Part 2        |      C        |    0       |
|:------------------------------------------:|
| Part 2        |      C        |    1       |
|:------------------------------------------:|
| Part 2        |      C        |    2       |
|:------------------------------------------:|

输出应该是:

| Name          | Version       | Iteration  |
|===============|===============|============|
| Part 1        |      A        |    3       |
|:------------------------------------------:|
| Part 1        |      B        |    2       |
|:------------------------------------------:|
| Part 2        |      C        |    2       |
|:------------------------------------------:|
| Part 2        |      D        |    3       |
|:------------------------------------------:|

【问题讨论】:

  • 这是一个非常基本的group by 查询。
  • 请解释分组如何帮助选择最高迭代值?

标签: sql oracle11g oracle-sqldeveloper


【解决方案1】:

Gordon Linoff 怎么说是基本的group by 查询。您应该了解如何工作分组并添加其他功能来查询。例如,您的任务是group by + MAX。也看看这个question

您的查询:

SELECT name
     , version
     , MAX(iteration)
FROM table1
GROUP BY name, version

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 2011-09-14
    • 2017-12-19
    • 2022-01-27
    • 2020-07-15
    • 1970-01-01
    • 2021-04-28
    相关资源
    最近更新 更多