如何在SQL中获取对象的所有版本和最新迭代

时间:2016-02-12 01:23:58

标签: sql oracle11g oracle-sqldeveloper

我对SQL很新......

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

这里,在给定版本中,部件会多次更改,每次更改都会使迭代次数增加。

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

| 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       |
|:------------------------------------------:|

1 个答案:

答案 0 :(得分:1)

如何说Gordon Linoff是基本的group by查询。您应该了解工作组的方式并添加其他功能以进行查询。例如,您的任务是group by + MAX。另请查看此question

您的查询:

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